.htaccessの301リダイレクトが上手くいかない場合


このエントリをはてなブックマークに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをBuzzurl(バザール)に追加このエントリをNifty Clipに追加このエントリをLivedoor Clipに追加

一般的に301リダイレクトは以下のような方法が紹介されている場合が多い。
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://sample.com/$1 [R=301,L]

ところが、wiki系やWordPress等を使用していると、一部もしくは全部にURLエンコードを含んでいる場合が多い。
この時、301リダイレクトはかなりの確率で失敗する。


Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://sample.com/$A%B%C$1 [R=301,L]

こういう場合は、RedirectMatchを使用すると上手くいくケースが多い。


RedirectMatch \/.*\.html$ http://sample.com/%A%B%C


このエントリをはてなブックマークに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをBuzzurl(バザール)に追加このエントリをNifty Clipに追加このエントリをLivedoor Clipに追加

タグ:

コメントをどうぞ