Kullanılan Tarayıcıya (Chrome, Firefox veya IE) Göre Web Sitesi İsteklerini Yönlendirin


Önceki makalemizde (mod_rewrite ile Dahili Yönlendirme Nasıl Yapılır) söz verdiğimiz gibi, bu yazıda kullanıcının tarayıcı kriterlerine göre Apache mod_rewrite yönlendirme isteklerini kullanarak özel bir web sitesi içeriğinin nasıl görüntüleneceğini açıklayacağız.

Teorik olarak tüm modern tarayıcıların içeriği eşit şekilde yorumlaması gerekir. Ancak bazıları en son özellikleri diğerlerinden daha hızlı uygular. Belirli bir tarayıcı kullanılarak görüntülendiğinde bozulmayan, tam işlevsel bir web sitesine sahip olmak için. Maalesef bu, farklı bir dizine veya sayfaya yönlendirmeyi gerektirecektir.

Önerilen Okuma: Apache Web Sunucunuzun Performansını Artıracak 5 İpucu

Aşağıdaki yeniden yazma kuralları, tecmint.html isteklerini tecmint-chrome.html, tecmint-firefox.html veya tecmint'e yönlendirecektir. -ie.html, kullanılan tarayıcıya bağlı olarak (Google Chrome, Mozilla Firefox veya Internet Explorer).

Bunu yapmak için, tarayıcıyı kullanıcı aracısı dizesine göre tanımlamak üzere HTTP_USER_AGENT ortam değişkeni kullanılır. Burada, yeniden yönlendirmenin gerçekleşmesi için yerine getirilmesi gereken bir koşulu belirtmemize olanak tanıyan RewriteCond yönergesini tanıtıyoruz.

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ütfen tecmint.html hedef sayfasının mutlaka var olması gerekmediğini unutmayın. Öncelikle aşağıdaki içeriklerle tecmint-firefox.html, tecmint-chrome.html ve tecmint-ie.html'yi oluşturalım.

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>

farklı tarayıcılar kullanarak tecmint.html'ye göz atmanın sonucunu göreceğiz:

Gördüğünüz gibi tecmint.html istekleri, kullanılan tarayıcıya bağlı olarak buna göre yönlendirildi.

Bu yazımızda kullanıcının tarayıcısına göre yönlendirme isteklerinin nasıl yapılacağını ele aldık. Özetlemek için, mod_rewrite kısa notlarına göz atmanızı ve ileride başvurmak üzere Apache belgelerindeki yönlendirme ve yeniden eşleme kılavuzuna yer işareti koymanızı şiddetle tavsiye ederim.

Her zaman olduğu gibi, bu makaleyle ilgili herhangi bir sorunuz veya geri bildiriminiz varsa aşağıdaki yorum formunu kullanmaktan çekinmeyin. Sizden haber almak için sabırsızlanıyoruz!