mod_rewrite

| トラックバック(2)

こないだ自分用にメモしたURLのRewritingをやることにした。

これまでdjkaz.comをtumblrに飛ばして、そこではBlogとPhotoBox二つ、合計三つ分のRSSを束ねて表示ということをしていたのだが、自宅サーバーを復活させるにあたって、djkaz.comをそっちへ向けることにした。

で、一日くらい経ってからログを見たら、Googleのボットが頻繁にやってきて、tumblrにあったファイルへアクセスしていく。試しに検索してみたら、tumblrのページが400件近くインデックス化されていた。Blog本編より多い(苦笑)。これを404としてみすみす捨ててしまうはもったいないな〜と思ったわけだ。

さて、今回参考にしたのは、mod_rewrite サンプル集
やりたいのは、
djkaz.com/post/* → djkaz.tumblr.com/post/*
djkaz.com/page/* → djkaz.tumblr.com/page/*
という二つ。まずは、
/etc/httpd/httpd.conf
をsudoでバックアップ後に開いて、この部分を探す
------

<ifmodule mod_rewrite.c="">
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^TRACE
RewriteRule .* - [F]
</ifmodule>

------
ここをのRewriteRuleに以下二行を追記、
------

RewriteRule ^/post/(.*)$ http://djkaz.tumblr.com/post/$1
RewriteRule ^/page/(.*)$ http://djkaz.tumblr.com/page/$1

------
./post 配下と ./page 配下を、http://djkaz.tumblr.com/の下にある同じディレクトリー名の場所へ飛ばすというもの。あとは、Web共有を再起動で完成。

試しに、
http://djkaz.com/post/50571082
へアクセスしてみると、
http://djkaz.tumblr.com/post/50571082
が返される。これでGoogleの検索結果を失うことなく、リダイレクトができるようになったわけだ。

トラックバック(2)

一昨日設定したmod_rewriteに続いて、昨日はVirtualHostを設定... 続きを読む

前回までのあらすじ。 Apache2をインストールして、httpd.confをい... 続きを読む