.htaccess php jsによるスマホPC振り分け

Filed under: スマートフォン関係 — kdcs @ 11年9月2日 金曜日

.htaccessでRewriteEngineを使ってPCとスマホを振り分ける記述
同一のURLで下層のフォルダ(スマホサイト)にリダイレクトさせる方法と
外部のスマホサイトにリダイレクトさせる方法は基本的に同じ

同一URLパターン(スマホはspというフォルダ)


RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod|iPad|Android|BlackBerry)
RewriteRule ^$ /sp/ [R]

外部URLパターン(フルパスで記述)


RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod|iPad|Android|BlackBerry)
RewriteRule ^$ http://kdcs-web.com/sp/ [R]

wordpressの.htaccessに記述する場合、「# BEGIN WordPress~# END WordPress」の外に記述する
※内側に記述すると勝手に書き換えられることがあるため

http://kdcs.sub.jpのspというフォルダにスマートフォンサイトを用意した場合の記述


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod|iPad|Android|BlackBerry)
RewriteRule ^$ http://kdcs.sub.jp/sp/ [L]
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

phpでは、


<?php
$ua=$_SERVER['HTTP_USER_AGENT'];
if((strpos($ua,'iPhone')!==false)||(strpos($ua,'iPod')!==false)||(strpos($ua,'Android')!==false)||(strpos($ua,'BlackBerry')!==false)){
header("Location:http://kdcs.sub.jp/smart/");
exit();
}
?>

javascriptでは、


<script type="text/javascript">
if ((navigator.userAgent.indexOf('iPhone') > 0 && navigator.userAgent.indexOf('iPad') == -1) || navigator.userAgent.indexOf('iPod') > 0 || navigator.userAgent.indexOf('Android') > 0) {
location.href = '/sp/';
}
</script>

サイト内検索

カテゴリー

最近の投稿

« |.htaccess php jsによるスマホPC振り分け| »
↑上に戻る