wwwありなしの統一やhttps://への統一などでよく使用するhtaccess。Wordpressではインストールしたディレクトリに設置されているので、他に設定を追記する時は同じhtaccessを使用するわけですが、どういう事か、htaccessの記述内容が勝手に変わってしまう時があります。変わってしまうというより、初期状態に戻ってしまったという感じ。
今回はWordpressのhtaccessを編集するときの注意点をご紹介。
WordPressをインストールした時のhtaccess
WordPressのディレクトリにあるhtaccessを開くと、以下のような記述になっていると思います。
# BEGIN WordPressRewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
「BEGIN WordPress」から「END WordPress」までの間がWordpress用の記述で、「RewriteEngine On」の記述があるので、wwwありなしの統一やhttps://への統一などの記述をここに追記していました。
するとある時、リダイレクトが動作していないことに気付き、htaccessを確認してみると、初期状態に戻っているではありませんか。なんてこった。Wordpressの設定変更かアップデートか何かでhtaccessは上書きされてしまうのか。
いや、コアファイルならともかく、htaccessはそんなことはないはず。
という事で確認してみると、原因がわかりました。
ここはWordpress用の記述だから編集しないでね
「BEGIN WordPress」から「END WordPress」の記述ですが、単にWordpress用の記述というわけではなく、「WordPress用の記述だからここは編集しないでね」という意味だったそうです。なので、htaccessの編集が必要な際は、ここ以外の場所に記述すれば大丈夫です。
記述例
# ここに記述 # BEGIN WordPressRewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress # ここに記述
以上、Wordpressでhtaccessの内容が勝手に変わってしまった時に確認すべきことでした。