2016-04-05 11 views
0

Ich habe Pfade wie folgt aus:.htaccess zu übergeordnete Seite umleiten, wenn nicht nur zu wissen, den Anfang des Weges gefunden

mypage/blog/somestring1 
mypage/blog/somestring2 
mypage/blog/somestring3 

Ich würde es gerne, wenn ich mypage/blog/somestring1/page1 gehen und es wird nicht gefunden leitet es zurück zur Seite: mypage/blog/somestring1. Alles was ich weiß ist, dass der Pfad mit mypage/blog beginnt.

Eine Sache zu beachten ist, dass ich Drupal verwende und das sind Knoten mit diesen Pfad Aliase.

Der Rest kann alles sein. Ist es möglich, diese 301 Weiterleitung zu erstellen, wenn sie nicht in .htaccess gefunden wird?

Antwort

0

können Sie diese Regel verwenden, in /.htaccess:

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} ^/(blog/[\w-]+)/[\w-]+/?$ [NC] 
RewriteRule^/%1 [L,NE,R=301] 
+0

Ich mache das eigentlich in Drupal, so kann ich es nicht in diesem Ordner tun. Kann ich es einfach aktualisieren auf ... (mysite.com/blog ...)? – albertski

+0

Sie können dieselbe Regel auch in root .htaccess verwenden. Stellen Sie nur sicher, dass es keine .htaccess in '/ blog /' – anubhava

+0

Es funktioniert, aber es leitet immer um. Ich möchte nur umleiten, wenn nicht gefunden. Zum Beispiel, wenn ich tatsächlich einen Pfad mypage/blog/somestring4/page1 habe. Ich will nicht, dass es auf mypage/blog/somestring4 umleitet. – albertski

Verwandte Themen