htaccess: Leite die alte Domain und alle Seiten auf eine neue Domain um

8

Ich weiß, dass es auf Stackoverflow viele Beispiele gibt, aber ich vermisse immer noch etwas.

Ich versuche, Ссылка auf Ссылка mit den folgenden Regeln, aber das funktioniert nicht:

%Vor%

Es wird korrekt umgeleitet, wenn ich die Root-URL anrufe, aber nicht, wenn ich eine Seite anrufe. Was mache ich falsch?

Vielen Dank im Voraus!

Pv

    
pvledoux 29.06.2011, 08:25
quelle

3 Antworten

9

Beim Schreiben von mod_rewrite -Regeln werden die Regeln in der Reihenfolge angewendet, in der sie erscheinen.

Um eine alte Domain auf eine neue Domain umzuleiten, möchten Sie, dass diese in Ihrer Datei .htaccess oder httpd.conf zuerst steht - alle anderen Regeln sollten danach erscheinen. p>

Wenn Sie nur ein bestimmtes Verzeichnis umleiten wollen , wird die folgende Regel so ausgeführt, dass der Rest der Site normal funktioniert:

%Vor%

Wenn Sie die gesamte Site umleiten möchten, wird die folgende Regel dies tun:

%Vor%

Wenn Sie möchten, dass Crawler wissen, dass Ihre Inhalte verschoben wurden und den Übergang so nahtlos wie möglich gestalten möchten, achten Sie darauf, 304 Redirect -Flag in der RewriteRule.

Dies stellt sicher, dass Benutzer und Suchmaschinen auf die richtige Seite geleitet werden.

Während wir zu diesem Thema sind, bietet EllisLab im Rahmen der Version EE 2.2 "offiziell" eingeschränkten technischen Support für Entfernen von index.php von ExpressionEngine URLs .

Fügen Sie Ihren Code einfach hinzu oder aktualisieren Sie ihn wie folgt: Achten Sie darauf, dass Sie alle Regeln berücksichtigen, die Sie möglicherweise bereits haben:

%Vor%     
rjb 29.06.2011, 17:51
quelle
3

Versuchen Sie, die folgende Ruke als erste zu verwenden:

%Vor%

Beachten Sie auch die Großschreibung R mit der Kurzform für den Kleinbuchstaben redirect .

    
vbence 29.06.2011 08:30
quelle
1

Haben Sie versucht, mod_alias einfache Redirect-Anweisungen (ein Kernmodul, das Sie haben), bevor Sie das Hacky-Mod-Rewrite-Ding ausprobieren?

Ich würde einen VirtualHost mit ServerName old.domain.com machen und in diesem VH würde ich diese Regel hinzufügen:

%Vor%

von doc:

  

Dann wird jede Anforderung, die mit URL-Path beginnt, eine Umleitungsanforderung an den Client an der Position der Ziel-URL zurückgeben. Zusätzliche Pfadinformationen außerhalb des übereinstimmenden URL-Pfads werden an die Ziel-URL angehängt.

Erhalte einen separaten VirtualHost für brand.new-domain.com (mit ServerName brand.new-domain.com ) und setze in diesem keine Umleitungsregel.

Wenn Sie immer noch die 2 Domains im selben VirtualHost verwalten möchten, müssen Sie Mod-Rewrite verwenden, da auch RedirectMatch die Anfrage-Domain auf der Anfrage nicht überprüfen kann.

    
regilero 29.06.2011 22:04
quelle