Omdiriger en nettadresse fra én server til en annen server i Apache
Som lovet i våre to foregående artikler (Utfør intern omdirigering med mod_rewrite og Vis tilpasset innhold basert på nettleser), vil vi i dette innlegget forklare hvordan du utfører en omdirigering til en ressurs som har blitt flyttet fra en server til en annen server i Apache ved å bruke mod_rewrite-modul.
Anta at du redesigner bedriftens intranettside. Du har bestemt deg for å lagre innholdet og stilen (HTML-filer, JavaScript og CSS) på én server og dokumentasjonen på en annen – kanskje en mer robust en.
Foreslått lesing: 5 tips for å øke ytelsen til Apache-nettserveren din
Du vil imidlertid at denne endringen skal være gjennomsiktig for brukerne dine, slik at de fortsatt kan få tilgang til dokumentene på den vanlige nettadressen.
I følgende eksempel er en fil med navnet assets.pdf
flyttet fra /var/www/html i 192.168.0.100 (vertsnavn: nett) til samme plassering i 192.168.0.101 (vertsnavn: web2).
For at brukere skal få tilgang til denne filen når de blar til 192.168.0.100/assets.pdf
, åpner du Apaches konfigurasjonsfil på 192.168.0.100 og legger til følgende omskrivingsregel (eller du kan også legge til følgende regel i .htaccess-filen din):
RewriteRule "^(/assets\.pdf$)" "http://192.168.0.101$1" [R,L]
der $1
er en plassholder for alt som samsvarer med det regulære uttrykket innenfor parentes.
Lagre endringer nå, ikke glem å starte Apache på nytt, og la oss se hva som skjer når vi prøver å få tilgang til assets.pdf ved å bla til 192.168.0.100/assets.pdf:
Foreslått lesing: 25 nyttige ‘.htaccess’-triks for nettsteder
I ovenstående nedenfor kan vi se at forespørselen som ble gjort for assets.pdf på 192.168.0.100 faktisk ble håndtert av 192.168.0.101.
tail -n 1 /var/log/apache2/access.log
I denne artikkelen har vi diskutert hvordan du utfører en omdirigering til en ressurs som har blitt flyttet til en annen server. For å avslutte, vil jeg sterkt anbefale at du tar en titt på mod_rewrite-guiden og Apache-omdirigeringsveiledningen for fremtidig referanse.
Som alltid, bruk gjerne kommentarskjemaet nedenfor hvis du har noen bekymringer angående denne artikkelen. Vi ser frem til å høre fra deg!