Leiten Sie subdomain1.example.com mit .htaccess an subomain2.example2.com weiter

528
Sirach Matthews

Mein Ziel

Meine Hauptwebsite wird von einem Drittanbieter-Server gehostet (genauer gesagt mit Netfirms). Ich möchte, dass die meisten meiner Inhalte dort gehostet werden. Ich betreibe jedoch ein Mitarbeiterportal auf einem lokalen Server. Das Portal basiert auf Python-Skripts, die von Netfirms nicht unterstützt werden. Der lokale Server ist beispielsweise über eine DDNS-URL erreichbar localserver.dyndns.com. Ich habe mit meinem Webserver-Host eine Subdomain eingerichtet ( portal.example.comzum Beispiel).

Wenn Mitarbeiter zu suchen portal.example.com, möchte ich, dass der Inhalt bereitgestellt wird localserver.dyndns.com. Während Netfirms mir erlaubte, die Weiterleitung zu erstellen, generiert ihr System einfach eine index.hmlmit der Ziel-URL ( localserver.dyndns.com) in einem Frameset. Dies zerstört natürlich die Reaktionsfähigkeit der Website.

Was ich versucht habe

Die einfachste, nicht rahmenabhängige Lösung bestand im Erstellen einer .htaccessDatei, die Folgendes enthält:

Redirect /index.html http://localserver.dyndns.com 

Während dies den Verkehr umleitet localserver.dyndns.com, ändert sich die URL, sodass die Mitarbeiter sehen, dass sie nicht portal.example.commehr erreichbar sind. Ich habe ein paar verschiedene Umschreibungsbedingungen / -regeln ohne Erfolg ausprobiert.

RewriteEngine On RewriteCond % ^portal.example.com$ RewriteRule ^(.*)$ http://localserver.dyndns.com/$1 [L,R=301] 

oder

RewriteEngine On RewriteRule ^portal.example.com$ http://localserver.dydns.com/$1 

Ich habe sogar mit (raus) Anführungszeichen versucht und / oder führe \für „spezielle“ Zeichen ( \:, \/, \., zum Beispiel), in scheinbar endlosen Variationen. Ich entweder bekommen 500 - Internal Server Error, Access Restricted,401 - Not Found

Nichts scheint zu funktionieren. Was vermisse ich falsch?

1

1 Antwort auf die Frage

1
rAlen

Sie müssen nicht umleiten, wenn Sie nur Inhalte von localserver.dyndns.comunter portal.example.combereitstellen und portal.example.comals URL verwenden möchten .

Erstellen Sie einen DNS-Eintrag für portal.example.com als CNAME mit Wert localserver.dyndns.com.

Es zeigt portal.domain.comauf die aktuelle IP- localserver.dyndns.comAdresse und schreibt die URL nicht neu.

Wenn ich das tue, erhalte ich die Fehlermeldung "Server Not Found". Ich habe bestätigt, dass ich direkt auf `localserver.dyndns.com` zugreifen kann. Wenn ich es aus "portal.example.com" versuche, erhalte ich die Fehlermeldung "Server nicht gefunden - Firefox kann den Server nicht unter portal.example.com finden" Sirach Matthews vor 7 Jahren 0
Haben Sie CNAME-Eintrag für portal.example.com richtig hinzugefügt, können Sie DNS auch auf Ihrer Seite zwischenspeichern? Besuchen Sie http://www.mxtoolbox.com/CNAMELookup.aspx und überprüfen Sie portal.example.com. Dort erfahren Sie, was Sie zurückgeben. rAlen vor 7 Jahren 1
Dank dafür. Ich überprüfte und bestätigte, dass die TTL noch 60 Minuten dauert, also sind Patienten erforderlich, dann werden wir sehen. Sirach Matthews vor 7 Jahren 0