Website-Suche

Leiten Sie eine Website-URL von einem Server auf einen anderen Server in Apache um


Wie in unseren beiden vorherigen Artikeln versprochen (Interne Umleitung mit mod_rewrite durchführen und Benutzerdefinierten Inhalt basierend auf dem Browser anzeigen), erklären wir in diesem Beitrag, wie Sie mit Apache eine Umleitung zu einer Ressource durchführen, die von einem Server auf einen anderen Server verschoben wurde mod_rewrite-Modul.

Angenommen, Sie gestalten die Intranetseite Ihres Unternehmens neu. Sie haben sich entschieden, den Inhalt und das Styling (HTML-Dateien, JavaScript und CSS) auf einem Server und die Dokumentation auf einem anderen zu speichern – vielleicht a robusteres.

Empfohlene Lektüre: 5 Tipps zur Steigerung der Leistung Ihres Apache-Webservers

Sie möchten jedoch, dass diese Änderung für Ihre Benutzer transparent ist, sodass diese weiterhin über die gewohnte URL auf die Dokumente zugreifen können.

Im folgenden Beispiel wurde eine Datei mit dem Namen assets.pdf von /var/www/html in 192.168.0.100 (Hostname: web) an denselben Ort in 192.168.0.101 (Hostname: web2).

Damit Benutzer auf diese Datei zugreifen können, wenn sie zu 192.168.0.100/assets.pdf navigieren, öffnen Sie die Apache-Konfigurationsdatei unter 192.168.0.100 und fügen Sie die folgende Umschreiberegel hinzu (bzw Sie können Ihrer .htaccess-Datei auch die folgende Regel hinzufügen):

RewriteRule "^(/assets\.pdf$)" "http://192.168.0.101$1"  [R,L]

Dabei ist $1 ein Platzhalter für alles, was dem regulären Ausdruck in Klammern entspricht.

Speichern Sie nun die Änderungen, vergessen Sie nicht, Apache neu zu starten, und sehen wir uns an, was passiert, wenn wir versuchen, auf assets.pdf zuzugreifen, indem wir zu 192.168.0.100/assets.pdf navigieren:

Empfohlene Lektüre: 25 nützliche „.htaccess“-Tricks für Websites

Unten sehen wir, dass die Anfrage, die für assets.pdf am 192.168.0.100 gestellt wurde, tatsächlich von 192.168.0.101 bearbeitet wurde.

tail -n 1 /var/log/apache2/access.log

In diesem Artikel haben wir erläutert, wie eine Umleitung zu einer Ressource durchgeführt wird, die auf einen anderen Server verschoben wurde. Zum Abschluss würde ich Ihnen dringend empfehlen, einen Blick auf die Anleitung „mod_rewrite“ und die Anleitung „Apache Redirect“ zu werfen, damit Sie später darauf zurückgreifen können.

Wenn Sie Bedenken zu diesem Artikel haben, können Sie wie immer gerne das Kommentarformular unten verwenden. Wir freuen uns von Ihnen zu hören!