Redirigeix l'URL d'un lloc web d'un servidor a un servidor diferent a Apache


Tal com vam prometre als nostres dos articles anteriors (Mostra el contingut personalitzat basat en el navegador), en aquesta publicació explicarem com realitzar una redirecció a un recurs que s'ha mogut d'un servidor a un servidor diferent a Apache mitjançant el mòdul mod_rewrite.

Suposem que esteu redissenyant el lloc de la intranet de la vostra empresa. Heu decidit emmagatzemar el contingut i l'estil (fitxers HTML, JavaScript i CSS) en un servidor i la documentació en un altre, potser un de més robust.

Tanmateix, voleu que aquest canvi sigui transparent per als vostres usuaris perquè encara puguin accedir als documents a l'URL habitual.

A l'exemple següent, un fitxer anomenat assets.pdf s'ha mogut de /var/www/html a 192.168.0.100 (nom d'amfitrió: web) a la mateixa ubicació a 192.168.0.101 (nom d'amfitrió: web2) .

Per tal que els usuaris puguin accedir a aquest fitxer quan naveguen a 192.168.0.100/assets.pdf, obriu el fitxer de configuració d'Apache a 192.168.0.100 i afegiu la següent regla de reescriptura (o també podeu afegir la següent regla al vostre fitxer .htaccess):

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

on $1 és un marcador de posició per a qualsevol cosa que coincideixi amb l'expressió regular entre parèntesis.

Ara deseu els canvis, no us oblideu de reiniciar Apache i vegem què passa quan intentem accedir a assets.pdf navegant a 192.168.0.100/assets.pdf:

A l'anterior a continuació podem veure que la sol·licitud que es va fer per a actius.pdf a 192.168.0.100 la va gestionar realment 192.168.0.101.

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

En aquest article hem parlat de com realitzar una redirecció a un recurs que s'ha mogut a un servidor diferent. Per acabar, us recomano que feu una ullada a la guia de redirecció d'Apache per a una futura referència.

Com sempre, no dubteu a utilitzar el formulari de comentaris a continuació si teniu cap dubte sobre aquest article. Esperem amb interès tenir notícies teves!