WordPressなどのサイトで「/index.html」や「/index.php」を.htaccesで「/」にリダイレクトする方法

◯◯◯.com/index.html とか ◯◯◯.com/index.php へのアクセスを、 ◯◯◯.com/ にリダイレクトさせる方法のメモ。
.htaccessに記述しておくと、WordPressなどのサイトで404になったりするのを防ぐことができます。
こういうの、wordpressのURL正規化っていうんだよね?よね?

# index.html, index.phpは/にリダイレクト
RewriteEngine on
Options +FollowSymLinks
RewriteCond %{THE_REQUEST} ^.*/index.(html|php)
RewriteRule ^(.*)index.(html|php)$ http://%{HTTP_HOST}/$1 [R=301,L]

ちなみに、「Options +FollowSymLinks」でうまくいかなかったら「Options +SymLinksIfOwnerMatch」にしてみるといいかも?
サーバーによって使えたり使えなかったりするような気がする。。。

FollowSymLinksは「シンボリックリンクを有効にする」という設定。
SymLinksIfOwnerMatchは、さらにセキュリティを高めた「ファイルの所有者に限りシンボリックリンクを有効にする」という設定らしい。

.htaccessはサイトが表示されなくなっちゃったりとめっちゃこわいので、必ず控えをとってから差し替えましょう。

ABOUT US

yukipan
Web制作会社で働いてます。パンダとかリラックマとか、まあるいものが好き。好奇心旺盛で、何にでも興味をもってしまう。とりあえずやってみてから取捨選択するのがモットー。今はグリーンカレーとチャイと株式投資がブーム。