Wie kann man eine Webseite mit Apache weiterleiten

Die verbreitete Weise, eine Webseite weiterzuleiten, ist das Hinzufügen der Datei `.htaccess` zum Apache Webserver.

Apache (Apache HTTP Server) kann mit verschiedenen Tools weiterleiten. Der einfachste Weg ist die Verwendung von Tools der Extension mod_alias.

Die Richtlinie zur Weiterleitung

Die Richtlinie zur Weiterleitung erlaubt Ihnen, einfache und einseitige Redirects mit Apache auszuführen. Diese Direktive ist ein Teil des Moduls “mod_alias” und benötigt mindestens zwei Argumente: die alte URL und die neue URL.

Um eine einfache Weiterleitung in Ihrer Serverkonfiguration durchzuführen, verwenden Sie folgenden Code:

Beispiel

<VirtualHost *:80>
	ServerName www.domain1.com
	Redirect / http://www.domain2.com
</VirtualHost>

<VirtualHost *:80>
	ServerName www.domain2.com
	. . .
	. . .
</VirtualHost>

Diese Weiterleitung weist den Browser an, alle Anfragen für "www.domain1.com" an "www.domain2.com" zu richten. Dies gilt nur für eine einzige Seite, nicht für die gesamte Website.

Beachten Sie bitte, dass die Redirect-Direktive zu einem 302 oder einem temporären Redirect führt. Falls Sie eine permanente Weiterleitung möchten, verwenden Sie 301-Redirect oder Redirect permanent. (Mehr über HTTP-Statusmeldungen erfahren).

Beispiel 1

Redirect 301 /oldlocation http://www.domain2.com/newlocation

Beispiel 2

Redirect permanent /oldlocation http://www.domain2.com/newlocation

Die Richtlinie zum Redirectmatch

Wenn Sie mehr als eine Seite weiterleiten möchten, verwenden Sie die Direktive redirectMatch directive. Sie erlaubt Ihnen, dem Verzeichnis panpassende Muster unter Verwendung konstanter Ausdrücke zu identifizieren.

Die Richtlinie redirectMatch passt Muster in Klammern an und setzt den passenden Text in Redirect mit “$1”, 1 die erste Textgruppe ist. Nachfolgende Gruppen erhalten nachfolgende Nummern.

Wenn Sie jede Anfrage im Verzeichnis "/blog", in einer Subdomain namens "blog.new-website.com" zuordnen möchten, können Sie folgendes Beispiel verwenden:

Beispiel

RedirectMatch 301 /blog(.*) http://www.blog.new-website.com$1

Dieser Befehl wird den Blog der alten Website auf den Blog einer neuen weiterleiten.

Verwenden Sie die URLs mod_rewrite

Für kompliziertere Aufgaben wie die Manipulation des Query-Strings verwenden Sie mod_rewrite. Eigentlich werden URLs nicht weitergeleitet, sondern neu geschrieben. Der Hauptunterschied zwischen Rewriting und Redirecting besteht darin, dass das Rewriting einer URL darin besteht, dass der Server eine andere Anfrage als die vom Client bereitgestellte zurückgibt.

Wenn Sie URLs mit sensiblen oder gefährdeten Daten ausblenden möchten, kann Rewriting für Sie nützlich sein.

Um die alte URL in die neue umzuschreiben, folgen Sie dieser Regel.

Empfehlung: Es ändert nicht einmal den Inhalt der Adressleiste des Browsers, so dass die Benutzer der alten URL nicht einmal erkennen können, dass die Seite umbenannt wurde.

Erfahren Sie mehr über die Weiterleitung von Webseiten mit HTML, JavaScript, PHP, Apache und Node.js.