お名前.comでElementorがうまく動かない
クライアントが契約しているお名前.comのレンタルサーバーでElementor がうまく動作しませんでした。
数時間格闘の末なんとか解決!というかなんとなく解決!
原因がすべての人にあてはまるとは思えませんが、一応ケースとしてこういうことがありましたという報告です!
具体的な問題
弊社でXserver で開発を進めていたウェブサイトをクライアントのウェブが設置してあるお名前.comのウェブ領域へAll in one migrationを使って移設。
一見成功したように見えたけど、調節のためElementorの編集画面に遷移して編集内容を保存しようとすると、Elementorの更新ボタン付近に404サーバーエラーというElementorでは見慣れないエラーが。。。
結果編集結果は反映されない。。。ChromeのF12でログを見るとwp-admin/admin-ajax.phpが404になってる。。。ファイルはちゃんとあります。
原因究明
この手の問題はElementor の高度な設定かプラグインのコンフリクトを真っ先に疑います。今回もそのヘンの設定をどんどんElementor に有利なようにしていきましたが、一向に改善されません。何回かやっているうちに今度はメモリーアロケーション周りのPHP関連エラーが表示され、サイトすら表示されなくなりました。
メモリ関連のエラーはphp.iniが疑わしいです。これはphpの処理にホストコンピューターがどれだけのメモリ使用を許可してもらえるかという設定になりますが、通常レンタルサーバーの管理画面などで調節が可能です。
しかしお名前.comの管理画面にはそれがありません。FTPでサイトルートにあるphp.iniというファイルの内容を書き換える必要があります。
もう一つ疑ったのはWAFです。もう直感でしかなかったんですけど、こういうよくわからないトラブルの原因ってWAFが起因することが経験上多いから。。。
あとで弊社エンジニアが、今回のような編集画面のトラブルだと大いにWAFに原因アリということでした。具体的な理由はよくわかりませんけど。。。
解決策
メモリ問題
php.iniの内容を50Mから512Mへ大幅に大きい値へ変更しました。
合わせて念の為wp-configの内容にも新しいエントリーを。
define('WP_MEMORY_LIMIT', '512M');
こんな感じでwp-config.phpに行を追加。
WAF問題
これはお名前.comのサーバー管理画面からon/offの設定が可能です。ただし設定の反映に1時間程度かかるようで、この時間差が今回我々の困惑に大きく影響しました。
offにしたはずなのに変化がない、でも小1時間あれやこれやしていたら、なんと問題が解消。。。
総括
おそらくで恐縮ですが、Elementor が編集できない問題はWAFが主な原因であり、あれやこれやをやっていて表示されたPHPのエラーはメモリアロケーションが問題であったというのが我々なりのまとめです。
未だにWAFがどういう影響を及ぼしていたのかわかりませんけど。
想像できる方いたら、教えてください。
筆者の頭脳では到底理解できません。
これがすべてのお名前.comの利用者に当てはまるとは思えませんが、なにかの参考になればと思いこの記事を掲載しました。