htaccessリダイレクトで特定の階層を除外する方法

htaccessリダイレクトで特定の階層を除外する方法

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でのリダイレクト方法(記述方法)になります。

 

Webサイト作成htaccessリダイレクト

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

5 × one =