Apatchのmod_rewriteを使ってスマートホン用のサイトにリダイレクトさせる方法をメモ。
MovableTypeのプラグインを組み込んでスマホ用のブログページを作りました。
PC用のブログはルートディレクトリの「blog」で、スマートホン用のブログを「blog」の中の「i」にしたとします。
スマートホンからアクセスを転送するため、「blog」ディレクトリに以下の内容で.htaccessを作成します。
#スマホサイトにリダイレクト RewriteEngine On RewriteBase /blog RewriteCond %{REQUEST_URI} !^/blog/i/.*$ RewriteCond %{REQUEST_URI} !^(.JPG|.jpg|.GIF|.gif|.PNG|.png) [NC] RewriteCond %{HTTP_USER_AGENT} ^(iPhone|iPod|Android|BlackBerry|Windows.Phone) [NC] RewriteCond %{HTTP_USER_AGENT} !iPad [NC] RewriteRule ^(.*)$ /blog/i/$1 [R=301,L]
もし、画像やiPadを除き「blog」にスマートホンからアクセスがあった場合は「i」にリダイレクトするという内容。
「i」ディレクトリには画像がないため、ブログ内の画像のソースやリンクまでリダイレクトされると画像が表示されず困るので、画像はリダイレクトしないように5行目を加えています。