Vietnes pieprasījumu novirzīšana, pamatojoties uz izmantoto pārlūku (Chrome, Firefox vai IE)


Kā solīts mūsu iepriekšējā rakstā (Kā veikt iekšēju novirzīšanu ar mod_rewrite), šajā ierakstā mēs paskaidrosim, kā parādīt pielāgotu vietnes saturu, izmantojot Apache mod_rewrite novirzīšanas pieprasījumus, pamatojoties uz lietotāja pārlūkprogrammas kritērijiem.

Teorētiski visām mūsdienu pārlūkprogrammām saturs būtu jāinterpretē vienādi. Tomēr daži jaunākās funkcijas ievieš ātrāk nekā citi. Lai būtu pilnībā funkcionējoša vietne, kas neplīst, kad to aplūko, izmantojot noteiktu pārlūkprogrammu. Diemžēl tam būs nepieciešama novirzīšana uz citu direktoriju vai lapu.

Šie pārrakstīšanas kārtulas novirzīs tecmint.html pieprasījumus uz tecmint-chrome.html, tecmint-firefox.html vai tecmint-ie.html atkarībā no izmantotās pārlūkprogrammas (Google Chrome, Mozilla Firefox vai Internet Explorer).

Lai to izdarītu, vides mainīgo HTTP_USER_AGENT izmanto, lai identificētu pārlūku, pamatojoties uz user-agent virkni. Šeit mēs ieviešam direktīvu RewriteCond , kas ļauj mums norādīt nosacījumu, kas jāievēro, lai notiktu novirzīšana.

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]

Lūdzu, ņemiet vērā, ka mērķa lapai tecmint.html nav obligāti jābūt. Vispirms izveidosim tecmint-firefox.html, tecmint-chrome.html un tecmint-ie.html ar šādu saturu.

<!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>

mēs redzēsim pārlūkošanas rezultātu vietnē tecmint.html, izmantojot dažādas pārlūkprogrammas:

Kā redzat, pieprasījumi par tecmint.html tika attiecīgi novirzīti atkarībā no izmantotās pārlūkprogrammas.

Šajā rakstā mēs esam apsprieduši, kā veikt novirzīšanas pieprasījumus, pamatojoties uz lietotāja pārlūkprogrammu. Īsāk sakot, es iesaku jums vēlāk apskatīt Apache dokumentu dokumentācijas pārstrādāšanas rokasgrāmatu.

Kā vienmēr, nekautrējieties izmantot zemāk esošo komentāru veidlapu, ja jums ir kādi jautājumi vai atsauksmes par šo rakstu. Mēs ceram uz jums atbildi!