これは特定のページで、固定ページや投稿ページで公開(更新)ボタンを押すと501エラーがでて、更新できないという現象が起こった時に調査した内容の話です。。
※今回の記事はエックスサーバーにおいて起こる現象についての内容です!
このページだけ501エラーがでる…何…?
他のページでは問題なく更新できるのに特定のページだけ更新できないという状況に陥りました。
501エラーはサーバー関連のエラーのようです。
大体はWAFが原因の用なのでその方面で調べます。
エックスサーバーのWAFの設定を見直す。(先に言っとくとこれでは解決しない)
エラー画面のテキスト「対応していないメソッド(MOVE/COPYなど)を使用した。」で検索すると、WAF設定が原因と出てきます。
ので設定を見直しました。
・サーバーパネル>セキュリティ>WAF設定>ドメイン選択>「コマンド対策」をOFF
…しかしまだ501エラーとなります。
※今回の私ケースは問題解決になりませんでしたが、場合によってはこれで解決できると思います。
というかそもそも何が引っかかってるのか??
特定のページのみ501になるということで、wordpressの記事編集できる部分に書かれた内容が問題と推測し、全消しして更新したところ、501エラー出ずに更新できました。なので問題の部分を地道に特定していくと、以下の文字列が問題だった模様
解決方法
画像で処理する。
サイトのデザインに関わる部分なら、問題になる文字列を含む部分ごと画像にする
コードペンを使う
ブログ等で、コード紹介する時は外部サイトを使う
See the Pen Untitled by mtrad_ingu (@mtrad_ingu) on CodePen.
その文字列を使わない
上記のようにカンマなど、文字参照コードが引っかかる場合は、特殊文字のままにする
更新作業の時だけWAFを外す
WAFが原因なので、WAFを外す。セキュリティ的に問題だが、、、
テストサイトからプラグインで移行する
テストにWAF入れてない場合は、そっちで問題なく編集できるので、「All-in-One WP Migration and Backup」で本番環境に移す
以上です。
まるっきり解決する方法が今のところないので、事例によって使い分けるのが良いかなと思います
う〜〜〜〜〜〜〜〜〜〜〜む