.htaccess mehrere 301-Weiterleitungen

.htaccess mehrere 301-Weiterleitungen

Ich verschiebe ein auf einem Apache-Server gehostetes Blog auf eine neue Domäne.

Die Permalinks bleiben für die Blogbeiträge gleich, es gibt jedoch einige Seiten, bei denen sich der URL-Slug auf der neuen Domäne ändert.

Meine Frage ist, ob Folgendes möglich ist und wie ich das mit Umschreibregeln machen würde.

Die URL-Slugs/Permalinks der Blogbeiträge und der meisten Seiten der alten Domain bleiben auf der neuen Domain gleich. Ich stelle mir also vor, dass ich eine Umleitungsregel hinzufügen könnte, die von https://huiskopenomteverhuren.nl/nach umleitet https://vastgoedmentor.com, da sie auf der neuen Domain denselben /Slug findet

Einige Seiten der alten Website wurden auf neue Permalinks verschoben. Ich brauche also zusätzliche Regeln, um beispielsweise umzuleiten, https://huiskopenomteverhuren.nl/kennisbank/und https://vastgoedmentor.com/resourcesmuss dies auch für einige andere Seiten tun.

Antwort1

RewriteRuleInnerhalb der Serverkonfiguration können mehrere Direktiven mit regulären Ausdrücken angelegt werden . Dabei sollte mit den spezifischen Weiterleitungen mit geänderten Permalinks begonnen werden. Die allgemeine Weiterleitung für alle anderen Seiten kann am Ende hinzugefügt werden.

RewriteEngine On

RewriteRule ^/kennisbank(/.*)?$ https://vastgoedmentor.com/resources$1 [END,R=301]
RewriteRule ^/old2(/.*)?$       https://vastgoedmentor.com/new2$1      [END,R=301]
RewriteRule ^/old3(/.*)?$       https://vastgoedmentor.com/new3$1      [END,R=301]

RewriteRule ^/(.*)$           https://vastgoedmentor.com/$1           [END,R=301]

Die Notation von (/.*)?führt die Umleitung mit und ohne abschließenden Schrägstrich aus und fügt der neuen URL alle zusätzlichen Pfaddetails hinzu. Es wird also huiskopenomteverhuren.nl/kennisbank/something-or-nothingzu vastgoedmentor.com/resources/something-or-nothing.

Weitere Einzelheiten RewriteRulefinden Sie unter https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule

Da alle Regeln auf eine andere Domäne verweisen, besteht keine Gefahr, in eine Schleife zu geraten. Trotzdem ist es eine gute Idee, das ENDFlag zu allen Regeln hinzuzufügen, um zu verhindern, dass die übrigen Regeln ausgewertet werden. Anders als das LFlag ENDverhindert das Flag auch die Auswertung weiterer Regeln in .htaccess-Dateien.

Weitere Einzelheiten zu den Flaggen finden Sie unter https://httpd.apache.org/docs/current/rewrite/flags.html

verwandte Informationen