|
検索エンジンは /?id=1 とか書いてある動的ページのリンクは辿ってくれないとの事(年々賢くなってるので最近はそうでもないらしい)。
せっかくブログを書いているのに、Googleとかに内容がランキングされないのは寂しいので早速対応してみた。
Apacheのrewriteというモジュールでできる。
httpd.confに、
#LoadModule rewrite_module modules/mod_rewrite.so
の行があるので、コメントを外してあげる。
で、ルールを同じhttpd.confの中に書けばOK。
<IfModule ssl_module>
RewriteEngine on
RewriteRule ([0-9]+)/([0-9]+)/([0-9]+)/([0-9-]+).html /index.html?id=$1&blogindex=$2&categoryindex=$3&blogdate=$4
RewriteRule ([0-9]+)/([0-9]+)/([0-9]+).html /index.html?id=$1&blogindex=$2&categoryindex=$3
RewriteRule ([0-9]+)/([0-9]+).html /index.html?id=$1&blogindex=$2
RewriteRule ([0-9]+).html /index.html?id=$1
</IfModule>
Apache再起動。
もちろん、CGI自体のリンク部分のプログラムも /?id=* でないこのルールの記述に合わせてあげる。
ひとつ注意は、rewriteでディレクトリが変わるので、他のディレクトリ指定している物(画像やCSSやJavascript等のファイルやリンク)はすべてDocumentRootからの絶対パスに直さないといけない。
で、できたのがこんな感じ。
なんか懐かしい色合いだな。最初はこんなに落ち着きなかったのか…。
URLを/で区切って指定。見た目はディレクトリ以下のファイルだが、実際には動的に作成されたページへ飛ぶ。
これで書いたブログがGoogleとかに載る様になればいいなぁ~(現在、検索サイトにランキングされてるけど、この仕組みがどれくらいランキングに効果あるのかは不明)。
ちなみに、こういう個別記事をURLによって指定できる仕組みをPermalinkと言うらしい(静的動的は関係ないっぽいけど…)。
※ 『Web』に繋がる関連物を 視覚的に探しだせるサイトを作ってみました(よろしければクリックしてみてくださいね)。
リンク元:
(1) : http://www.google.co.jp/search?hl=ja&lr=lang_ja&client=firefox-a&rls=org.mozilla:ja:official&hs=uta&q=%3CIfModule+ssl_module%3E&start=10&sa=N
ページ閲覧者数:9人
[ Web ] 一覧へ
|