顧客のウェブサイトで、さくらのレンタルサーバー(ビジネス)を利用しているサイトがあります。
月初のWordPress定期アップデート作業の際、該当サイトの投稿ページが表示されなくなる不具合がありました。
解決するのに30分以上掛かってしまいましたが解決したので、どなたかの為になればと方法を記録しておきます。
解決法
状況
どのページにアクセスしても、以下の様にindex.phpが表示されてしまう。投稿ページにアクセスできない。
https://www.example.jp/blog/index.php
めっちゃ焦りました。
.htaccessが問題だった
よくわからないのですが、さくらのレンタルサーバーの環境が変わっためと推測されます。
私の環境では、WordPressインストールディレクトリの.htaccessの以下が問題だったようです。
# SSLを強制する
RewriteEngine On
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://www.example.jp/blog/$1 [R=301,L]
これは、非SSLでアクセスされた際、SSLにリダイレクトする処理です。
以前は確実に動作していました。
……が、おそらくこれが使えなくなった模様。つまり、SSLでアクセスされているので、さらにリダイレクトされてしまっているような感じ?だったようです。
以下の様に、ひとまず無効にして解決しました。
# SSLを強制する
RewriteEngine On
#RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
#RewriteRule ^(.*)$ https://www.example.jp/blog/$1 [R=301,L]
以上です。とりあえずこれで良しとします。
canonicalもしてあるので、強制SSLしなくても良いように思いますが、リダイレクトの必要性が生じた際には対策したいと思います。
余談
これを解決するのに、以下を行いました。
- テーマをカスタムから変更
- 全プラグインを停止
これで駄目だったので、.htaccessに疑いの目を向けた次第です。
ちょっとだけ問題解決能力の経験値を積み重ねられました。
昔の静的サイトはこういうのがありませんでしたが、昨今はこういうの多いですね。心臓が止まりそうになるので困ります(汗)
コメント