Apache2 hogyan kell beállítani egy átirányítási url
Ez üres papír. Befejezés gombra.
Eddig a RuNet nem voltam képes megtalálni egy cikket, amely elérhető lenne, és teljes mértékben meséltek, hogyan kell beállítani az irányelvek RewriteCond és RewriteRule .htaccess fájlt.
Sehol választ a legalapvetőbb kérdésekre: hogyan az átalakulás az URL, a böngésző? Hogyan látja az új transzformált URL-je? Lehetséges, hogy a napló URL leképezés?
Adj nekünk egy kis fekete doboz, amelyben szeretné, hogy írjon egy furcsa varázslat, nem látta, hogy mi történik a folyamat és a kimenet. Mi nem tetszik. Ezért mi meg fogjuk vizsgálni.
Az is elképzelhető, hogy a mod_rewrite Apache modul csatlakoztatva van és működik, és már csak a jogot arra, hogy az irányelvek URL átirányítja a .htaccess fájlban.
Hogyan működik az átirányítási URL .htaccess a mod_rewrite modul?
Vonalak programunk feltételes modul mod_rewrite irányelvek:
- RewriteEngine - engedélyezése / tiltása átirányítás. Ez általában használt elején a fájlt. htaccess formájában:
RewriteCond chto_sravnivaem s_chem_sravnivaem
RewriteRule kerül végrehajtásra, ha az összes korábbi RewriteCond irányelvek vannak True.RewriteRule source_string (azaz. Minta) preobrazovannaya_stroka (azaz. A helyettesítés) [zászlók]
Itt most csak azokat a legegyszerűbb és legnépszerűbb átalakítása: átalakítása az URL-t a fájl neve a forrás, amely forog Apache.
Milyen URL belsejébe .htaccess?
A .htaccess fájl URL-karakterlánc belép jel nélkül a protokoll és a domain név.
Hogyan látja az átalakulás URL?
Bár nem fogjuk látni a változásokat, megy az URL, ha aktiválva mod_rewrite irányelvek. nem tudjuk megérteni a munkáját, és nem tudja megfelelően levelet .htaccess fájlt.
Lásd a log-transzformáció lehetséges a naplóban mod_rewrite Apache. De először meg kell állítania az Apache, hogy információt konvertáló URL esik a naplóban. Beállítások az Apache 2.4-es és az Apache 2.4 és újabb különböző.
Az Apache 2.4-es:
A setup az Apache httpd.conf, szükség van a szabad szobák ellenőrzésére RewriteLog irányelvek és RewriteLogLevel. (Ha nincs szükség, hogy adjunk nekik), és állítsa be a következő értékeket az ezen irányelvek:
# Apache 2.4-es,
A log fájl elérési útját léteznie kell a fájlrendszerben. Ez a fájl fog fejlődni információt konvertáló URL.
A Apache 2.4 és a fenti:
A telepítő a Apache httpd.conf, meg kell találni a direktíva LogLevel és az értéke legyen:
# Apache 2.4 és a fenti
LogLevel riasztási átírni: trace3
átalakítani az URL információkat fog kialakulni Apache log (ellenőrizze, hogy lehetséges, hogy nem, így nem kell az Apache 2,4).
Ezt követően újra kell indítani az Apache. A naplók látható lesz a következő adatok:
átírni 'admin / vipPortPageId / forward_function' -> 'index.php / admin / vipPortPageId / forward_function'
RewriteCond: input = '/ kis / asdfsadf / avatar.jpg' minta = '^ / (*.) / (*.) (*.)' => Egyező
RewriteCond: input = '/ var / www / local.dev / www / kis / avatar.jpg' minta = '- f' => párosított
átírni 'kicsi / asdfsadf / avatar.jpg' -> '/small/avatar.jpg'
belső átirányítás /small/avatar.jpg [belső átirányítás]
Figyelem! Naplózás eredménye átalakulások mod_rewrite - egy nagyon időigényes folyamat. Ne engedje, hogy ezeket a beállításokat a szerver prodershene. Még a teszt szerver, naplózás konfigurálásához, hibakeresési átirányítás, majd vissza a beállításokat vissza.