2004年11月25日
iモード向けサイトでリダイレクト使う際は最後の/に注意
今日iモード向けのコンテンツで、QVGA端末かQQVGA端末かを判別して各端末用のページにリダイレクトするというスクリプトを書いたんですが、リダイレクトする際に必ず「ページが移動しました」のようなメッセージがでてしまうという現象に出くわしました。
今まで同じようなスクリプトを書いたときにはこんな現象が起きたことがなかったので、一瞬とまどいましたが、原因はなんてことなく、Locationで指定した飛び先のURLの最後に/(スラッシュ)がついていなかったからでした。
たとえば、http://hori-uchi.com/qvga/index.htmlにリダイレクトさせたくて、
print "Location: http://hori-uchi.com/qvga"; print "\n\n";
と記述すると、携帯のブラウザではまずhori-uchi.comの/qvgaというファイルを見に来るのですが、そのファイルがないので(ディレクトリなので)、次に/qvga/index.htmlを取得しようと試みます。どうやらこのファイルがないので・・・のあたりで、「ページが移動しました」のようなメッセージを表示するようです。/があるとないとで大違いなんですね。
Continuing the discussion...
このエントリーのトラックバックURL:
http://hori-uchi.com/mt/trackback/227
Comments
こんにちわ。Gmailの際はお世話になりました。
自分も先日同じような携帯用のリダイレクトページを作ったのですが同じ現象が起きて疑問だったのですが、なるほどそういうことだったのですね。参考になりました。
Posted by gamenou at 2004年11月27日 23:57
gamenouさんこんにちは。
/ぐらいは多めにみてほしいですよね。ちなみにAUだと/がなくても問題なくリダイレクトされました。
Posted by hori-uchi at 2004年11月28日 04:02
