După cum am promis în cele două articole anterioare (Efectuați redirecționarea internă cu mod_rewrite și Afișați conținut personalizat bazat pe browser), în acest post vom explica cum să efectuați o redirecționare către o resursă care a fost mutată de la un server la alt server în Apache folosind mod_rewrite modul.
Să presupunem că reproiectați site-ul Intranet al companiei dvs. Ați decis să stocați conținutul și stilul (Fișiere HTML, JavaScript, și CSS) pe un server și documentația pe altul - poate unul mai robust.
Citire sugerată:5 sfaturi pentru a spori performanța serverului dvs. web Apache
Cu toate acestea, doriți ca această modificare să fie transparentă pentru utilizatorii dvs., astfel încât aceștia să poată accesa documentele la adresa URL obișnuită.
În exemplul următor, un fișier numit active.pdf
a fost mutat din /var/www/html în 192.168.0.100 (numele gazdei: web) în aceeași locație din 192.168.0.101 (numele gazdei: web2).
Pentru ca utilizatorii să acceseze acest fișier atunci când navighează la
192.168.0.100/assets.pdf
, deschideți fișierul de configurare Apache 192.168.0.100 și adăugați următoarea regulă de rescriere (sau puteți adăuga, de asemenea, următoarea regulă la .htaccess fișier):
RewriteRule "^ (/ assets \ .pdf $)" " http://192.168.0.101$1" [R, L]
Unde $1
este un substituent pentru orice lucru care se potrivește cu expresia regulată din paranteze.
Acum salvați modificările, nu uitați să reporniți Apache și să vedem ce se întâmplă când încercăm să accesăm active.pdf navigând la 192.168.0.100/assets.pdf:
Citire sugerată:25 Trucuri utile „.htaccess” pentru site-uri web
În cele de mai sus, putem vedea că cererea a fost făcută pentru active.pdf pe 192.168.0.100 a fost de fapt manipulat de 192.168.0.101.
# tail -n 1 /var/log/apache2/access.log.
În acest articol am discutat despre cum să efectuați o redirecționare către o resursă care a fost mutată pe un alt server. Pentru a încheia, v-aș sugera cu tărie să aruncați o privire la mod_rewrite ghid și Ghid de redirecționare Apache pentru referință viitoare.
Ca întotdeauna, nu ezitați să utilizați formularul de comentarii de mai jos dacă aveți nelămuriri cu privire la acest articol. Asteptam sa auzim de tine!