2009-07-02 14 views
0

Wir sind gerade auf unser neues Website Redesign umgestiegen.Redirect 301 Frage

Wir haben eine Kopie der vorherigen in einem Ordner "v1" und die neue ist in "v2". Ich spiele mit 2 .htaccess Dateien. Die Datei sind als solche organisiert:

root 
L .htaccess (1) 
L v1 
L v2 
    L .htaccess (2) 

.htaccess 1 macht 2 Dinge:

  • das www aus dem
  • URI entfernen
  • alle Anfragen Umleitungen/
v2

Die Regeln sind:

RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L] 

RewriteCond %{REQUEST_URI} !^/v2/ [NC] 
RewriteRule ^(.*)$ /v2/$1 [NC,L] 

Nun habe ich spezifische URLs, die gut indiziert sind. Zum Beispiel: example.com/pixflow/

würde Ich mag es zu 301 umleiten example.com/projects/pixflow1/ (was example.com/v2/projects/pixflow1/ physikalisch bedeutet)

zu Dafür habe ich 1 in .htaccess setzen:

RewriteRule ^pixflow/$ http://%{HTTP_HOST}/projects/pixflow1/ [L,R=301] 

Aber das nicht funktioniert, gibt es 404. Was mache ich falsch?

+0

Fragen Sie wirklich '/ pixflow /' und nicht nur '/ pixflow'? – Gumbo

+0

ja ich denke. Die ursprüngliche URL war http://www.domain.com/pixflow/ – pixeline

+0

Es funktioniert für mich: http://lab-au.com/pixflow/;) – Gumbo

Antwort

1

Sie können für den Ersatz geben Sie den absoluten URL-Pfad nur:

RewriteRule ^pixflow/$ /projects/pixflow1/ [L,R=301] 

Aber Sie soll auch funktionieren.

+0

ausgezeichnet! macht die htaccess-Datei leichter und lesbarer. – pixeline

0

es dies in .htaccess scheint setzen (1) arbeitet:

RewriteRule ^pixflow/$ http://domain.com/projects/pixflow1/ [L,R=301]