Reescritura básica de Apache

Reescritura básica de Apache

Digamos que tengo ejemploA.com y ejemploB.com. Si deseo realizar una reescritura en un servidor web Apache desde sitio webA.com a sitio webB.com, como cuando escribo ejemploA.com en un navegador, conservará la URL y me mostrará el contenido cargado como si estuviera navegando a exampleB.com, ¿cómo haría esto como una adición directa de host virtual?

Mi investigación sugiere algo como:

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

Pero con lo que no estoy familiarizado es con la relevancia de la parte "/some/url", ya que no deseo reescribir sólo URI particulares, sino todo el dominio.

De manera similar, si navego a exampleA.com/test.htm, debería mostrar lo que esté en exampleB.com/test, y el navegador dirá "exampleA.com/test" todo el tiempo.

Respuesta1

Para que esa regla se aplique a todo el dominio, querrás...

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

Que es básicamente lo mismo que:

ProxyPass / http://exampleB.com/

Tenga en cuenta que hay muchas cosas que podrían dirigir el navegador del usuario al exampleBdominio. ProxyPassReversemanejaría 30xlas redirecciones:

ProxyPassReverse / http://exampleB.com/

Pero cualquier otra cosa en el contenido podría apuntar a exampleB.com, incluido el contenido HTML (que mod_proxy_htmlpodría ayudar), javascript, CSS, etc.

Respuesta2

No puedes.

Si desea conservar la URL original, debe utilizar un proxy (buscar ProxyPass) ejemplob a través de ejemploa o utilizar algún tipo de travesuras de marcos.

información relacionada