Weboldal keresés

Webhely-kérések átirányítása a használt böngésző alapján (Chrome, Firefox vagy IE)


Ahogy azt előző cikkünkben ígértük (Hogyan hajtsunk végre belső átirányítást a mod_rewrite segítségével), ebben a bejegyzésben elmagyarázzuk, hogyan jeleníthetünk meg egyéni webhelytartalmat az Apache mod_rewrite átirányítási kérelmeivel a felhasználó böngészőfeltételei alapján.

Elméletileg minden modern böngészőnek egyformán kell értelmeznie a tartalmat. Néhányan azonban gyorsabban alkalmazzák a legújabb funkciókat, mint mások. Annak érdekében, hogy egy teljesen működőképes webhely legyen, amely nem törik el, amikor egy bizonyos böngészővel nézik. Sajnos ehhez egy másik könyvtárra vagy oldalra kell átirányítani.

Javasolt olvasmány: 5 tipp az Apache webszerver teljesítményének növeléséhez

A következő átírási szabályok átirányítják a tecmint.html kérelmeket a tecmint-chrome.html, a tecmint-firefox.html vagy a tecmint oldalra. -ie.html a használt böngészőtől függően (Google Chrome, Mozilla Firefox vagy Internet Explorer).

Ehhez a HTTP_USER_AGENT környezeti változót használják a böngésző azonosítására a user-agent karakterlánc alapján. Itt bemutatjuk a RewriteCond direktívát, amely lehetővé teszi egy olyan feltétel megadását, amelynek teljesülnie kell ahhoz, hogy az átirányítás megtörténjen.

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]

Kérjük, vegye figyelembe, hogy a tecmint.html céloldalnak nem feltétlenül kell léteznie. Először is hozzuk létre a tecmint-firefox.html, tecmint-chrome.html és tecmint-ie.html fájlt a következő tartalommal.

tecmint-firefox.html:
<!DOCTYPE html>
<html>
  <head>
	<meta charset="utf-8">
	<title></title>
  </head>
  <body>
	<h3>Welcome to Tecmint on Firefox!</h3>
  </body>
</html>
tecmint-chrome.html:
<!DOCTYPE html>
<html>
  <head>
	<meta charset="utf-8">
	<title></title>
  </head>
  <body>
	<h3>Welcome to Tecmint on Chrome!</h3>
  </body>
</html>
tecmint-ie.html:
<!DOCTYPE html>
<html>
  <head>
	<meta charset="utf-8">
	<title></title>
  </head>
  <body>
	<h3>Welcome to Tecmint on Internet Explorer!</h3>
  </body>
</html>

látni fogjuk a tecmint.html oldal különböző böngészők használatával történő böngészésének eredményét:

Amint láthatja, a tecmint.html kérelmei a használt böngészőtől függően ennek megfelelően lettek átirányítva.

Ebben a cikkben megvitattuk, hogyan lehet átirányítási kéréseket végrehajtani a felhasználó böngészője alapján. Végezetül azt javaslom, hogy vessen egy pillantást a mod_rewrite csalólapra, és vegye fel a könyvjelzők közé az átirányítási és újraleképezési útmutatót az Apache dokumentumokban későbbi hivatkozás céljából.

Mint mindig, nyugodtan használja az alábbi megjegyzés űrlapot, ha bármilyen kérdése vagy visszajelzése van ezzel a cikkel kapcsolatban. Várom válaszukat!