当BLOGは先月サーバー移転をし、URLが変わった。
Movabletypeのバーションは同じなのだが、移転を機にphp化も行っている。
旧BLOGも生きているため、同一記事が新旧両方のblogに存在する状況になっているが、検索エンジンでは相変わらず旧blogの記事がHITするケースが多い。
そこで、旧BLOGから新BLOGへhtaccessを使ってリダイレクトさせることを考えてみた。
(当然旧サーバー上の.htaccessです)
トップページだけのリダイレクトなら、.htaccessに下記の記述だけでよい。
Redirect permanent /mt5/guckie/index.html http://www.guckie.jp/mt5/lineage/index.php
ところが、検索エンジンでは個別記事が拾われているので、これでは不足。個別に作ったWEBページや月別アーカイブ&カテゴリーアーカイブをすべてリダイレクトさせる必要がある。
.htaccessでは正規表現も可能なので、正規表現で実現できないか考えたが、各記事のディレクトリ構造などがなかなか厄介で、諦め。
そこで、MT5のテンプレートのファイル生成機能を使って.htaccessを自動的に生成してみた。
デザイン→テンプレート→インデックステンプレートの作成
テンプレート名 = .htaccess
テンプレート内容
Redirect permanent <$MTBlogRelativeURL$>index.html <$MTBlogURL$>index.php
<MTArchiveList archive_type="Individual">
<MTEntries>Redirect permanent <$MTBlogRelativeURL$><$MTArchiveDate format="%Y/%m/"$><$MTEntryBasename$>.html http://www.guckie.jp/mt5/lineage/<$MTArchiveDate format="%Y/%m/"$><$MTEntryBasename$>.php</MTEntries>
</MTArchiveList>
<MTArchiveList archive_type="Category">
Redirect permanent <$MTBlogRelativeURL$><$MTSubCategoryPath$>/index.html http://www.guckie.jp/mt5/lineage/<$MTSubCategoryPath$>/index.php
</MTArchiveList>
<MTArchiveList archive_type="Monthly">
Redirect permanent <$MTBlogRelativeURL$><$MTArchiveDate format="%Y/%m/"$>index.html http://www.guckie.jp/mt5/lineage/<$MTArchiveDate format="%Y/%m/"$>index.php
</MTArchiveList>
テンプレート設定の出力ファイル名=.htaccess
MT5のエンコーディングと.htaccessのそれは大丈夫かとか気になりましたが、何とか成功。
これで.htaccessが生成されリダイレクトが行われるようになりました。
既に何らかの.htaccessをおいている場合には上書きされるのでご注意ください。
(私の場合は、テンプレートの出力ファイル名を.htaccess.redirectとして作成。作成後ダウンドードして既存の.htaccessと合体して再UPとやりました)
生成された.htaccessの内容。
Redirect permanent /mt5/guckie/index.html http://www.mtg.or.fm/mt5/guckie/index.php
Redirect permanent /mt5/guckie/2011/01/url.html http://www.guckie.jp/mt5/lineage/2011/01/url.php
Redirect permanent /mt5/guckie/2011/01/play_7.html http://www.guckie.jp/mt5/lineage/2011/01/play_7.php
Redirect permanent /mt5/guckie/2011/01/b-odgc.html http://www.guckie.jp/mt5/lineage/2011/01/b-odgc.php
Redirect permanent /mt5/guckie/2011/01/post_240.html http://www.guckie.jp/mt5/lineage/2011/01/post_240.php
Redirect permanent /mt5/guckie/2011/01/post_239.html http://www.guckie.jp/mt5/lineage/2011/01/post_239.php
Redirect permanent /mt5/guckie/2010/12/lv75_1.html http://www.guckie.jp/mt5/lineage/2010/12/lv75_1.php
Redirect permanent /mt5/guckie/2010/12/post_238.html http://www.guckie.jp/mt5/lineage/2010/12/post_238.php
Redirect permanent /mt5/guckie/2010/12/play_6.html http://www.guckie.jp/mt5/lineage/2010/12/play_6.php
以下略・・・・・延々と記事の数だけ記述されます。
しかし、
1.リダイレクトだとアクセス解析上、リファラーとかキーワードの抽出が出来なくなる(多分ですが)
2.Blog移転に伴いカテゴリアーカイブのディレクトリ構造が変わったためリダイレクトでエラーになる。
ということで、現状はTOPページのみリダイレクトする形にしてあります。
以上MT5のテンプレート、使い方によっては便利やん!!でした。