URIあれこれ

ページ情報
制作日
2004-01-13
最終更新日
2004-01-13
参照用URI
http://www.arielworks.net/articles/2004/0113b
分野

複雑なURIを少しだけ簡潔に

「/category?name=html」のようなURIは複雑で嫌なので(SEO的にも良くないようだ)、「/category/html/」でアクセスできるようにした。最後のスラッシュを付けるべきか付けないべきか悩んだのだが、ディレクトリに偽装した方が検索エンジンには登録されやすい気がしたので付けておいた。

今回は$name = substr( $_SERVER["PATH_INFO"], 1, -1 );で「/category」以下のパスを取得して条件分岐に使っている。

mod_rewriteを使おうかとも考えたのだけど、根本的にディレクトリの位置を偽装する場合ならともかく、これぐらいの事なら必要ないという結論に達した。

SEO的には拡張子無しのURIはどうなんだろうか。コンテントネゴシエーションを優先したい所だが、検索エンジンに引っかからないのも寂しい気がする。.phpを露骨に付けておくのとどっちが良いのだろうか。

$_SERVER["SCRIPT_NAME"]の挙動

ところで、phpinfoを見ていて気が付いたのだが$_SERVER["SCRIPT_NAME"]が返す値がWindowsXP上のApache2.0.48とXREAが提供するLinux上のApache1.3.29で違う。PHPのバージョンはどちらも4.3.4。

Multiviewsを有効にしているため拡張子無しで「foo」とリクエストした場合、「foo.php」がサーバから帰ってくる。そこまでは良いのだが、$_SERVER["SCRIPT_NAME"]に格納される値がWindowsXP上だと「foo.php」、XREAのサーバだと「foo」でなぜか違う。ちょっぴり不便。

連絡先、リンク、転載や複製などについては「サイト案内」をご覧ください。Powered by HIMMEL