以前のサイトをブックマークしたり、サービスに登録したりする際に、
https://hogehoge.hoge/index.html
と、index.htmlで登録していたりした場合に、サイトをWordPressにしたら
404になってしまいます。
リンク切れのようになってしまうので、
404でなく、トップページにリダイレクトしてあげればいいので、
その設定をメモります。
まず、WordPressを下層のディレクトリにインストールして、公開時にトップディレクトに表示するようにしてます。
サイトの移行の際によくやることです。
仮に
https://hogehoge.hoge/wp/
にWordPressを入れた場合、
https://hogehoge.hoge/wp/の.htaccessとindex.phpを上のディレクト
https://hogehoge.hoge/に移動して設定を変更します。
このやり方はここでは割愛いたします。
そのため、トップディレクトリにある、.htaccess を編集します。wpに.htaccessがあってもこちらは関係ありません。
.htaccessファイルのWordPressの部分がこの様になってるとおもいます。
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
以下を
RewriteRule ^index\.html?$ / [R=301,L]
追加します。
このようになります。
私の環境ではこれでうまくいきました。
ただ、うまく行かない場合もあるようです。
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html?$ / [R=301,L]
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress