mod_rewrite 로 iPhone단말기등 분류하기

RewriteEngine On

# 홈URL 변경
RewriteRule ^/$ /vpb/index.do [R,L]

# 휴대폰용
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^(Vodafone|J-PHONE|SoftBank) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^(UP.Browser|KDDI) [NC]
RewriteCond %{REQUEST_URI} !^/vpb/mobile/
RewriteRule ^/vpb/([0-9A-Za-z]+).do$ /vpb/mobile/$1.do [R=301,L]

#스마트폰용
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} iPad [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Android [NC,OR]
RewriteCond %{HTTP_USER_AGENT} BlackBerry [NC]
RewriteCond %{REQUEST_URI} !^/vpb/smart/
RewriteRule ^/vpb/([0-9A-Za-z]+).do$ /vpb/smart/$1.do [R=301,L]

R=301을 지정해서 강제로 Redirect하지 않으면 안된다.
NC -> 대소문자를 구분하지 않음
OR -> OR조건. 즉, 한개라도 해당되면 True. (생략하면 AND)
R -> Redirect.
L -> Last. 마지막을 의미. 이게 없으면 다음 구문으로 넘어감. Java로 말하자면 break; 정도?

This entry was posted in Apache. Bookmark the permalink.