htaccessでリダイレクトさせる方法と、特定の階層のリダイレクトを除外する方法を書きました。
この記事で実現できることは次のとおりです。
- スマートフォン(user-agent判別で)のみリダイレクトさせる
- 特定のディレクトリのみリダイレクトさせない
目次
スマートフォン(user-agent判別で)のみリダイレクトさせる場合
RewriteEngine On
#リダイレクト対象のUSER-Agentを定義
SetEnvIf User-Agent "iPhone" UA=sp
SetEnvIf User-Agent "iPod" UA=sp
SetEnvIf User-Agent "Android" UA=sp
#リダイレクト先の指定
RewriteCond %{REQUEST_URI} !^/sp.*
RewriteCond %{ENV:UA} ^sp$
RewriteRule ^(.*)$ /sp/ [R,L]
特定のディレクトリのみリダイレクトさせる場合
RewriteEngine On
#以下の場合、/lpと/blogにアクセスされたときは/web/にリダイレクトさせない
RewriteCond %{REQUEST_URI} !(^/lp/)
RewriteCond %{REQUEST_URI} !(^/blog/)
RewriteCond %{REQUEST_URI} !^/web.*
RewriteRule ^(.*)$ /web/ [R,L]
以上がhtaccessでのリダイレクト方法(記述方法)になります。
コメント