웹사이트 검색

사용된 브라우저(Chrome, Firefox 또는 IE)에 따라 웹사이트 요청 리디렉션


이전 기사(mod_rewrite로 내부 리디렉션을 수행하는 방법)에서 약속한 대로, 이 게시물에서는 사용자의 브라우저 기준에 따라 Apache mod_rewrite 리디렉션 요청을 사용하여 사용자 정의 웹사이트 콘텐츠를 표시하는 방법을 설명합니다.

이론적으로 모든 최신 브라우저는 콘텐츠를 동일하게 해석해야 합니다. 그러나 일부는 다른 것보다 최신 기능을 더 빠르게 구현합니다. 특정 브라우저를 사용하여 볼 때 중단되지 않는 완전한 기능의 웹사이트를 갖기 위해. 불행하게도 이를 위해서는 다른 디렉토리나 페이지로의 리디렉션이 필요합니다.

권장 읽기: Apache 웹 서버 성능을 향상시키는 5가지 팁

다음 재작성 규칙은 tecmint.html에 대한 요청을 tecmint-chrome.html, tecmint-firefox.html 또는 tecmint로 리디렉션합니다. -ie.html 사용 중인 브라우저(Google Chrome, Mozilla Firefox 또는 Internet Explorer)에 따라 다릅니다.

이를 위해 HTTP_USER_AGENT 환경 변수를 사용하여 사용자 에이전트 문자열을 기반으로 브라우저를 식별합니다. 여기서는 리디렉션이 발생하기 위해 충족해야 하는 조건을 지정할 수 있는 RewriteCond 지시문을 소개합니다.

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]

대상 페이지 tecmint.html가 반드시 존재할 필요는 없습니다. 먼저, 다음 내용으로 tecmint-firefox.html, tecmint-chrome.html, tecmint-ie.html을 생성해 보겠습니다.

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>

다양한 브라우저를 사용하여 tecmint.html을 탐색한 결과를 볼 수 있습니다.

보시다시피 tecmint.html에 대한 요청은 사용된 브라우저에 따라 리디렉션되었습니다.

이 문서에서는 사용자 브라우저를 기반으로 리디렉션 요청을 수행하는 방법에 대해 설명했습니다. 마무리하려면 mod_rewrite 치트 시트를 살펴보고 나중에 참조할 수 있도록 Apache 문서의 리디렉션 및 재매핑 가이드를 북마크에 추가하는 것이 좋습니다.

언제나 그렇듯이, 이 기사에 대해 질문이나 피드백이 있으면 아래 의견 양식을 자유롭게 사용하십시오. 여러분의 의견을 기다리겠습니다!