Preusmerite zahteve za spletno mesto na podlagi uporabljenega brskalnika (Chrome, Firefox ali IE)
Kot smo obljubili v prejšnjem članku (Kako izvesti notranjo preusmeritev z mod_rewrite), bomo v tem prispevku razložili, kako prikazati vsebino spletnega mesta po meri z uporabo zahtev za preusmeritev Apache mod_rewrite na podlagi uporabnikovih meril brskalnika.
V teoriji bi morali vsi sodobni brskalniki vsebino razlagati enako. Vendar nekateri uvajajo najnovejše funkcije hitreje kot drugi. Da bi imeli popolnoma funkcionalno spletno mesto, ki se ob ogledu z določenim brskalnikom ne pokvari. Na žalost bo to zahtevalo preusmeritev v drug imenik ali stran.
Naslednja pravila prepisovanja bodo zahteve za tecmint.html preusmerila na tecmint-chrome.html, tecmint-firefox.html ali tecmint-ie.html, odvisno od uporabljenega brskalnika (Google Chrome, Mozilla Firefox ali Internet Explorer).
V ta namen se spremenljivka okolja HTTP_USER_AGENT
uporablja za prepoznavanje brskalnika na podlagi niza uporabniškega agenta. Tu uvajamo direktivo RewriteCond
, ki nam omogoča, da določimo pogoj, ki mora biti izpolnjen za preusmeritev.
RewriteCond "%{HTTP_USER_AGENT}" ".*Firefox.*" RewriteRule "^/tecmint\.html$" "/tecmint-firefox.html" [R,L] RewriteCond "%{HTTP_USER_AGENT}" ".*Chrome.*" RewriteRule "^/tecmint\.html$" "/tecmint-chrome.html" [R,L] RewriteCond "%{HTTP_USER_AGENT}" ".*Trident.*" RewriteRule "^/tecmint\.html$" "/tecmint-ie.html" [R,L]
Upoštevajte, da ciljna stran tecmint.html ni nujno, da obstaja. Najprej ustvarimo tecmint-firefox.html, tecmint-chrome.html in tecmint-ie.html z naslednjo vsebino.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <h3>Welcome to Tecmint on Firefox!</h3> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <h3>Welcome to Tecmint on Chrome!</h3> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <h3>Welcome to Tecmint on Internet Explorer!</h3> </body> </html>
videli bomo rezultat brskanja po tecmint.html z uporabo različnih brskalnikov:
Kot lahko vidite, so bile zahteve za tecmint.html ustrezno preusmerjene, odvisno od uporabljenega brskalnika.
V tem članku smo razpravljali o tem, kako narediti zahteve za preusmeritev na podlagi uporabnikovega brskalnika. Za zaključek toplo priporočam, da si ogledate vodnik za ponovno preslikavo v Apachejevih dokumentih za nadaljnjo uporabo.
Kot vedno, če imate kakršna koli vprašanja ali povratne informacije o tem članku, uporabite spodnji obrazec za komentar. Veselimo se vaših odzivov!