Grundlegendes Umschreiben von Apache

Grundlegendes Umschreiben von Apache

Angenommen, ich habe exampleA.com und exampleB.com. Wenn ich auf einem Apache-Webserver eine Umschreibung von websiteA.com zu websiteB.com durchführen möchte, d. h. wenn ich exampleA.com in einen Browser eingebe, wird die URL beibehalten und mir der geladene Inhalt angezeigt, als ob ich zu exampleB.com navigieren würde. Wie mache ich das als direkte virtuelle Host-Ergänzung?

Meine Recherchen legen etwa Folgendes nahe:

RewriteRule /some/url(.*) http://exampleB.com/some/url$1 [P,L]

Was ich jedoch nicht weiß, ist die Relevanz des Teils „/some/url“, da ich nicht nur bestimmte URIs, sondern die gesamte Domäne umschreiben möchte.

Wenn ich beispielsweise zu exampleA.com/test.htm navigiere, sollte das gerendert werden, was sich unter exampleB.com/test befindet, wobei der Browser die ganze Zeit „exampleA.com/test“ anzeigt.

Antwort1

Damit diese Regel auf die gesamte Domäne angewendet wird, benötigen Sie Folgendes:

RewriteRule /(.*) http://exampleB.com/$1 [P,L]

Was im Grunde dasselbe ist wie:

ProxyPass / http://exampleB.com/

Bedenken Sie, dass es viele Dinge gibt, die den Browser des Benutzers auf die exampleBDomäne verweisen könnten. würde Umleitungen ProxyPassReversehandhaben :30x

ProxyPassReverse / http://exampleB.com/

Aber alles andere im Inhalt könnte auf verweisen exampleB.com, einschließlich HTML-Inhalt (der mod_proxy_htmlhilfreich sein könnte), JavaScript, CSS usw.

Antwort2

Sie können nicht.

Wenn Sie die ursprüngliche URL beibehalten möchten, müssen Sie tatsächlich einen Proxy von Beispielb über Beispiela verwenden (siehe ProxyPass) oder eine Art Frame-Spielereien anwenden.

verwandte Informationen