更新:2006年12月02日(土)
携帯サイト振り分け (SEO対策考慮)
ドメインを直接指定して、アクセスした時に自動で端末に合わせたサイトへジャンプさせたいとお考えの方は多いでしょう。ネットでもあちこちにそういった関連の情報があり、また、様々な振り分け方法が存在している。例えば…
- perl等のCGIを用いた振り分け
- PHPを用いた振り分け
- .htaccessによる振り分け
それぞれに特徴があって、絶対にコレがいいという方法はないが、SEO対策の面で考慮すると、筆者はPHPによる携帯振り分けの方が安全かつ、効果的だと考えている。今回はこのPHPによる振り分け方法と何故SEO対策的に有利なのかをお話させて頂こう。
ちなみに、検索で奇麗にクロールされる事を意識するのであれば、PC上でも各携帯端末用のリンクをサイトマップでもかまわないから貼っておくようにするのがよい。
でなければ振り分けが発生した時点で、検索エンジンはどれか一つの入り口にしか入る事が出来ない。
まず、携帯振り分けの構造を簡単にした流れを箇条書きで解説する。
- 閲覧した端末またはブラウザ等の情報を取得する
- それはドコモ端末なのか?
→DoCoMo用のページへジャンプする。 - それは昔のEZWeb用なのか?
→ezweb用のページへジャンプする。 - それはJ-Phone端末またはVodahone用なのか?→Vodafone用のページへジャンプする。
- 3G対応の端末なのか?
→DoCoMo用のページへジャンプする。 - 上記のいずれにも属さない場合?
→PCページへジャンンプする。
これはよくあるオーソドックスなタイプの振り分け方法である。個人のホームページであれば、これで大抵の閲覧者は問題なく自分の端末でホームページを見る事が出来る。
※但し、企業サイトや特定のマニアックな端末に関する情報を提供しているような場合は、それらの振り分け要素とはまた別にPDA端末や各ブラウザごとの振り分けをする必要が出て来る。
さて、先程の振り分けの流れで多いのはCGIを使用したタイプがわりとこれに属する訳だが、この場合、コードの記述方法によっては、検索ボットが上手にクロールしてくれないような現象が発生する恐れがある。
例えばこういった場合等がそう…
.htaccessでindex.cgiを読ませてindex.cgiの振り分けを行い、それぞれのページへジャンプさせる。
この場合はどうしてもリダイレクトという処理が発生してしまう… 検索エンジンはこのリダイレクトの処理を非常に嫌う。その為、サイトがなかなかGoogleにインデックスされない。携帯振り分けを行ったら急に検索結果が悪くなった。
上位表示されなくなった。等といった問題が発生する場合がある。
リダイレクトは一度までならまだいいが、二度、三度行うとスパム扱いされかねないので極力使わない方がよい。
index.cgiの場合はドメイン名を直接打ち込めばそこに自動的に読み込むようには出来る。でも、結局の所、/pc/といったディレクトリにジャンプするか、index.htmlと常に表示されてしまうトップページになってしまう。
でも、振り分けごときにURLを偽装するようなサーバーに負担をかける処理をするのもナンセンス。
そこで、筆者はPHPによる振り分けを勧める。PHPのメリットはコードを埋め込める事にある。しかも、Perlと違って処理が速いので、携帯端末が表示されるのが遅くて困るというような事も少ない。
今の所筆者がよく使用している方法は下記のような方法だ。
ちなみに、参考にしているサイトがあるのでこちらも参照しておくと良いと思う。
携帯向けサイトでのPHPの応用。(現在、一時的に更新再開)
そして、上記のサイトを元に筆者がよく活用している方法を簡略化したものが下記のとうり。
index.phpの1行目に記述する内容
<?phpページタイトル(ezweb用)
$title="";EZウェブ用のURL
$page_e='';旧来のSoftBank用のURL
$page_j='';iモードや3G対応機種のURL
$page_i='';
$i=$_SERVER['HTTP_USER_AGENT'];
require_once('data/furiwake.txt');
?>
/data/furiwake.txtに記述する内容
<?php
//HDML記述のezweb端末?
if (preg_match("/UP¥.Browser¥/[3-5]/",$i)) {
header('Content-Type: text/x-hdml;charset=shift_jis');
echo('<hdml version="3.0" markable="TRUE" public="TRUE">');
echo('<nodisplay markable="TRUE" public="TRUE" title="'.$title.'">');
echo('<action type="ACCEPT" task="GO" dest="'.$page_e.'">');
echo('</nodisplay>');
echo('</hdml>');
exit();
}
//SoftBank以前の端末?
if (preg_match("/J-PHONE¥//",$i)) {
header("Location: $page_j");
exit();
}
//iモード/EZウェブ次世代機/エアーH"フォンなどの携帯端末一般。
if (preg_match("/DoCoMo¥//",$i) ||
preg_match("/Opera[s¥/]/",$i)
&& !(preg_match("/(Win|Mac|Linux|FreeBSD|OS/2|Solaris)/i",$i)) ||
preg_match("/UP.Browser/",$i) ||
preg_match("/^Vodafone/",$i) ||
preg_match("/^SoftBank/",$i) ||
preg_match("/^MOT-/",$i) ||
preg_match("/DDIPOCKET;/",$i) ||
preg_match("/WILLCOM;/",$i) ||
preg_match("/L-mode¥/¥//",$i)) {
header("Location: $page_i");
exit();
}
?>
ご覧頂くとおわかりかと思いますが、ファイルは2種類にわかれます。
勿論、data/furiwake.txtの内容をindex.phpにまとめて記述する方法でもよいのですが、その場合、サイト数が増える度にメンテナンス性が非常に悪くなります。
例えば、クライアントが同じドメイン名で企画もののページを複数作成したような場合、その都度携帯振り分けプログラムを複製貼付けといった事をする必要があります。
コード自体が短いので、最初は安易にやってしまいがちですが、数が増えてくると新しい規格の携帯が導入され、全ての振り分けページに反映させなければならなくなると、膨大な数になってしまいます。
その為、実際に端末を調べて振り分け処理を行うメインの部分をdat/ディレクトリ等に退避し、共通で使えるようにしておけば、後々のメンテナンスが容易になります。
※注意: index.phpに記述するコードはパスではなくhttp://から始まるURLを直接指定しなければ、閲覧出来なくなる端末があります。ですが、URLを指定すれば遠慮なく、飛んで行ってくれますので、くれぐれもURLの入力はお間違えのないようにしましょう。
続報: 携帯サイト振り分け(移行方法)
無料ブログ比較検証 : ハッスル寅男
伸び悩んでいる方は、ランキングを科学するを参照
[ 06:15 PM | comments (3) | trackback (0) ]
記事 貼り付け
投稿者 布団屋さん
はじめまして。
携帯とPCの振分け方法をヤフーで検索していたら
ここに辿り着きました。
大変詳しく書かれており、初心者の私でも上手く振り分ける事に成功しました。
しかし、少し上手くいかないところがあります。
いきなり質問をして申し訳ないのですが、よろしければ教えて頂けないでしょうか?
私は、PCサイトはサーバーだけレンタルして
オリジナルのサイトを作成しアップして、独自ドメインを取得しています。
携帯サイトはブログやサーバーなどをまとめてレンタルしている状態です。
ドメインは無く、起業から送られてくる長いアドレスです。
ここでご質問なのですが
トップページだったindex.htmlにこちらでご紹介の方法である
phpを埋め込んでindex.phpで振分けを行っているのですが
携帯からアクセスした先のアドレス表示が、http://****.comとドメイン名で表示されずに
http://****.com/****(このURLはレンタルのブログ先です。)と表示されてしまいます。
携帯からのアクセスからもhttp://****.comと表示させるには
どのようにすれば良いのでしょうか?
PCからはhttp://****.comとドメイン名で表示されています。
お忙しいとは思いますが、よろしければ教えて頂けますか。
[ URL | 2007年4月29日, 05:27 PM ]
投稿者 ハッスル寅男
よかった♪布団屋さんを経営されている方でしたか…
遅ればせながら今さっきコメントを反映させて頂きました。基本的に海外からのスパムコメント以外はそのまま反映されるようにしていたつもりだったのですが、URLが複数書かれているコメントは一旦保留されるようになっていました。
次からは多少URLが書かれてある場合でもスグに表示されるようにしております故、遠慮なさらずご不明な点は聞いて下さいね。
[ URL | 2007年5月04日, 01:04 AM ]
投稿者 ハッスル寅男
さて、ご質問の件ですが、携帯用のページへ飛ばす場合は、最後にindex.htmlといった形で最後の部分まできちんと打たなければいけません。端末によっては最後の記述をはしょった場合
例) ez/ このような形にすると閲覧出来ない端末もあります。
もし、最後のファイル名がご不明な場合は
ez/index.html や ez/index.htm や index.php や index.cgi
といった感じで試しにいくつか打ち込んでみてez/ と表記した場合と同じページが見れるファイル名を探してみて下さい。最も、手っ取り早いのは企業の方に直接、携帯のトップページに使用しているファイル名と拡張子を聞いてみるのが一番だとは思います。
[ URL | 2007年5月04日, 01:14 AM ]
この記事のトラックバックURL
- おすすめコンテンツ
- カテゴリ
-
ブログ初心者の方へ (4)
低価格レンタルサーバー (22)
└個人的ランキング (1)
└失敗しないサーバー選び (13)
中価格レンタルサーバー (3)
└失敗しない商用サーバー選び (3)
ブログ比較,検証 (23)
└ブログ比較 (3)
└ブログ検証 (19)
携帯サイト制作 (46)
└モバイルサイト制作の裏側 (21)
└ケータイサイト制作王3 (7)
└無料で携帯サイトを作成 (8)
└無料PHPスクリプト (9)
無料ブログの為のCSS講座 (1)
独自ドメイン攻略 (1)
Blogn (17)
くだらない話 (17)
ブックマーク (7)
└自動リンク (1)
└ブログマーク (5)
└実用性重視 (1)
- 最新情報
- 5/11 Windows版Safariが個人サイトを救う
- 5/08 モバイルサーバの機能は本物
- 5/03 ギガーンの評判,評価,口コミ
- 5/03 利幅を上げつつ信頼を勝ち取る
- 4/26 M-Form1.5を配布しました
- 4/25 PHPを意識せず使える魔法のメールフォーム
- 4/21 ハッスルサーバーで独自ドメイン
- 4/20 レンタルサーバーの社長が逮捕
- 4/19 CORESERVERのmailmanは世界一
- 4/19 スピーバーの障害を振り返る
- お役立ちリンク
-
サイト制作・アクセスアップ
お手軽ツール
自動リンク
- 過去ログ
- 最新コメント
Windows版Safariが個人サイトを救う
└ハッスル寅男 (5/13)
└Boreal Kiss (5/12)
└ハッスル寅男 (5/12)
└かねなし父さん (5/11)
日本語ドメインについて
└ハッスル寅男 (4/19)
└ペッシ (4/19)
続・新ぶろぐんの比較検証
└初心者 (4/15)
└ハッスル寅男 (4/15)
装いも新たにM Form2.0w配布開始!
└ハッスル寅男 (4/15)
└xplosive (4/13)
- その他の比較 検証サイト
- ハッスル寅男
- 無料ブログ徹底検証
- 携帯から無料ブログ比較検証

- 使用ブログ [ぶろぐん+]


