Elekeza Upya Maombi ya Tovuti Kulingana na Kivinjari Kilichotumika (Chrome, Firefox au IE)


Kama ilivyoahidiwa katika nakala yetu iliyotangulia (Jinsi ya Kufanya Uelekezaji Upya wa Ndani na mod_rewrite), katika chapisho hili tutaelezea jinsi ya kuonyesha maudhui maalum ya tovuti kwa kutumia Apache mod_rewrite ombi la kuelekeza upya kulingana na vigezo vya kivinjari cha mtumiaji.

Kwa nadharia, vivinjari vyote vya kisasa vinapaswa kutafsiri yaliyomo kwa usawa. Hata hivyo, baadhi hutekeleza vipengele vya hivi karibuni kwa kasi zaidi kuliko wengine. Ili kuwa na tovuti inayofanya kazi kikamilifu ambayo haivunjiki inapotazamwa kwa kutumia kivinjari fulani. Kwa bahati mbaya, hii itahitaji kuelekezwa upya kwa saraka au ukurasa tofauti.

Sheria zifuatazo za kuandika upya zitaelekeza upya maombi ya tecmint.html kwa tecmint-chrome.html, tecmint-firefox.html, au tecmint-ie.html kulingana na kivinjari kinachotumika (Google Chrome, Mozilla Firefox, au Internet Explorer).

Ili kufanya hivyo, utofauti wa mazingira wa HTTP_USER_AGENT hutumiwa kutambua kivinjari kulingana na mfuatano wa wakala wa mtumiaji. Hapa tunatanguliza maagizo ya RewriteCond, ambayo huturuhusu kubainisha sharti ambalo lazima litimizwe ili uelekezaji upya ufanyike.

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]

Tafadhali kumbuka kuwa ukurasa unaolengwa wa tecmint.html si lazima uwepo. Kwanza, hebu tuunde tecmint-firefox.html, tecmint-chrome.html, na tecmint-ie.html na maudhui yafuatayo.

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

tutaona matokeo ya kuvinjari kwa tecmint.html kwa kutumia vivinjari tofauti:

Kama unavyoona, maombi ya tecmint.html yalielekezwa kwingine kulingana na kivinjari kilichotumiwa.

Katika makala hii tumejadili jinsi ya kufanya maombi ya kuelekeza upya kulingana na kivinjari cha mtumiaji. Ili kuhitimisha, ningependekeza sana uangalie mwongozo wa urekebishaji kwenye hati za Apache kwa marejeleo ya siku zijazo.

Kama kawaida, jisikie huru kutumia fomu ya maoni hapa chini ikiwa una maswali au maoni yoyote kuhusu nakala hii. Tunatarajia kusikia kutoka kwako!