WordPressのテーマをカスタマイズする際に、function.phpを追記するひともいますよね。
function.phpに追記したはずなのに、保存されていないぞ…
phpを更新した際、
「何かうまくいかなかったようです。変更が保存されていないかもしれません。手動で修正し、FTP 経由でファイルをアップロードすることもできます。」
と表示されることがあります。
「何かうまくいかなかったようです」と表示された場合、「何か」が何かを探し出し、自分で解決しないと永遠に更新されません。
この記事ではWordPressでphpが更新失敗した際に行う対策方法をご紹介します。
<WordPress>function.phpなどphpの更新がうまくいった場合の表示
まず、どのような表示になると.phpの更新が成功しているのか?
ファイルの編集に成功しました。
このように表示されると、無事更新が完了しています。
反対に、
「何かうまくいかなかったようです。変更が保存されていないかもしれません。手動で修正し、FTP 経由でファイルをアップロードすることもできます。」
このように表示されると、phpの更新が失敗しています。
WordPressでfunction.phpが更新されないときの対処方法
レンタルサーバーのセキュリティ(WAF)の設定
わたしの原因は、まさにこれでした
- WAFとは?
-
他社からの攻撃をブロックしてくれるセキュリティ対策のひとつです。
エックスサーバーにはWAFの機能が備わっています
(※レンタルサーバーによって、有無がわかれます)
折角セキュリティ対策されているのに、自分から切りたくないな…
そこでおすすめの方法は、
- レンタルサーバーでWAF(セキュリティ)を外す
- WordPress上でfunction.phpなどphpを更新する
- レンタルサーバーでWAF(セキュリティ)を有効にする
少し面倒ですが、私のように被害が出る前にセキュリティ対策は万全にしておくことをおすすめします
エックスサーバーでのWAFの設定変更方法
エックスサーバーのサーバーパネルにログインします。
.phpを更新したいドメインを選択します
エックスサーバーのWAF設定はいくつかありますが、今回はfunction.phpを変更したいだけなので、PHP対策のみOFFにして確認画面へ進みます。
確認画面が表示されるので、確認後、設定するのボタンを押します
設定は以上で完了ですが、
反映待ちと表示されたら、
反映されるまでに1時間弱
かかります。
反映待ちの表示が消えたら、phpを更新して、再度この設定を行いONにしておきましょう
<?php ~の前に何か記載されている
プラグインに問題がある
セキュリティ系のプラグインをいれている方や、そのほかのプラグインでも
「何かうまくいかなかったようです。変更が保存されていないかもしれません。手動で修正し、FTP 経由でファイルをアップロードすることもできます。」
と表示されてしまう可能性があります。
この場合は、1つ1つプラグインを停止しながら確認してみましょう。
余談:レンタルサーバーにWAFがついていなければ注意
わたしが使っているエックスサーバーはWAFがありますが、ついていないレンタルサーバーもあります
昔、ほったらかしにしていてセキュリティが甘かったサイトが2つほど乗っ取られる事態となりました。
全く更新していなかったので、ぜーーーんぶ削除しましたが、このブログがそうなっていたらと思うと恐怖で震えます。
レンタルサーバーはセキュリティ対策がしっかりしているエックスサーバーがおすすめです。