Preusmerite URL spletnega mesta z enega strežnika na drug strežnik v Apacheju


Kot smo obljubili v prejšnjih dveh člankih (Prikaži vsebino po meri na podlagi brskalnika), bomo v tem prispevku razložili, kako izvesti preusmeritev na vir, ki je bil z modula mod_rewrite premeščen iz enega strežnika v drug strežnik v Apacheju.

Recimo, da preoblikujete spletno mesto intraneta vašega podjetja. Odločili ste se, da boste vsebino in slog (datoteke HTML, JavaScript in CSS) shranili na enem strežniku, dokumentacijo pa na drugem - morda bolj zanesljivem.

Vendar želite, da bo ta sprememba pregledna za vaše uporabnike, tako da bodo še vedno lahko dostopali do dokumentov na običajnem URL-ju.

V naslednjem primeru je bila datoteka z imenom assets.pdf premaknjena iz/var/www/html v 192.168.0.100 (ime gostitelja: splet) na isto mesto v 192.168.0.101 (ime gostitelja: web2) .

Če želite uporabnikom omogočiti dostop do te datoteke, ko brskajo po 192.168.0.100/assets.pdf , odprite konfiguracijsko datoteko Apacheja na 192.168.0.100 in dodajte naslednje pravilo prepisovanja (lahko pa tudi naslednje pravilo) v datoteko .htaccess):

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

kjer je $1 ograda za vse, kar se ujema z regularnim izrazom v oklepajih.

Zdaj shranite spremembe, ne pozabite znova zagnati Apache in poglejmo, kaj se zgodi, ko poskušamo dostopati do assets.pdf tako, da poiščemo 192.168.0.100/assets.pdf:

V zgornjem spodnjem delu lahko vidimo, da je zahtevo, ki je bila podana za assets.pdf dne 192.168.0.100, dejansko obravnavalo 192.168.0.101.

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

V tem članku smo razpravljali o izvedbi preusmeritve na vir, ki je bil premaknjen na drug strežnik. Za zaključek vam toplo priporočam, da si ogledate vodnik za preusmeritev Apache za nadaljnjo uporabo.

Kot vedno vas prosimo, da uporabite spodnji obrazec za komentar, če imate pomisleke glede tega članka. Veselimo se vaših odzivov!