2013-02-15 18 views
19

Ich möchte eine URL auf eine andere Seite auf der gleichen Domain umgeleitet haben, aber ohne dass der Browser die URL ändert. So sollte die Seite www.mydomain.co.uk/tour/ in Richtung www.mydomain.co.uk/ zeigen, aber ohne zu ändern..htaccess: Umleiten ohne URL zu ändern

Ich habe mir viele ähnliche Fragen zu Stackoverflow angesehen, aber alle Lösungen scheinen die URL für mich zu ändern.

Code:

RewriteEngine On 
Options +FollowSymLinks 
RewriteCond %{REQUEST_URI} ^/tour 
RewriteRule ^(.*)$ http://www.mydomain.co.uk/ [L] 
+1

Versuchen Sie, die Domäne zu entfernen. Versuchen Sie es auch mit '[P]' –

+0

Awesome Hinzufügen der [P] zu der Antwort unten tat es –

Antwort

18

Da Sie eine vollständige URL in Ihrer Rewrite-Regel bieten wird sie automatisch als Umleitung behandelt. Ersetzen Sie die vollständige URL mit nur einem Schrägstrich und es sollte funktionieren, das heißt:

RewriteCond %{REQUEST_URI} ^/tour 
RewriteRule ^(.*)$/[P] 

Sie können es sogar verkürzen bis:

RewriteEngine on 
RewriteRule ^/?tour.*/[P] 
+0

Sie sollten über die Risiken von mod_proxy aktiviert wie Apache tut hier http://httpd.apache.org/docs/current/ informieren mod/mod_proxy.html – user2602152

-4

nur versuchen, [L] wechselt auf [P] und ich gehe davon aus, dass es funktionieren wird.

+8

Ist das nicht, was die bereits akzeptierte Antwort auf die Frage gerade gesagt hat? –

1

1- Verwenden Sie [P] anstelle von [L] 2- Verwenden Sie $ s am Ende der zweiten Zeile, um eine Reihe von URLs umzuleiten und/am Ende davon zu entfernen. der Code wird wie folgt aussehen:

RewriteCond %{REQUEST_URI} ^/tour 
RewriteRule ^(.*)$ /$1 [P] 

, die mit mehr als der Indexseite des Ordners Tour behandelt.

+0

Dies ist genau das gleiche wie [Michal M's Antwort] (http://stackoverflow.com/questions/14895980/htaccess-redirect-without-changing-url/14896042#14896042) ... –

+0

Bitte überprüfen Sie erneut, das $ 1-Zeichen ist Dort! –

+0

Ah, mein Fehler. Ich habe die Veränderung nicht bemerkt. Um sicherzustellen, dass niemand anders den gleichen Fehler macht, empfehle ich, Ihre Antwort zu bearbeiten, um Michals existierende Antwort zu erwähnen, und warum Ihre anders ist –

Verwandte Themen