ロリポップが新サーバーへの移設をするにあたって、事前移設が行えるということで先に新サーバーへの事前移設を済ませることにした。
新サーバーへの移設自体は、ロリポップの管理画面でボタンをポチッと押せばいいものでとても単純だった。しかし、その後Wordpressのログインページが表示されなくなったり、Wordpressのプラグインが動作しなくなったりしたのだ。
ロリポップの新サーバー事前移設に伴いどんな不具合が発生し、解決方法はどのようなものか、をここにまとめる。
▼ロリポップのサーバーエラーが発生
ロリポップのサーバー移設と不具合について、これまでの経緯。
ロリポップ新サーバー移設に伴い、Wordpressで運営しているサイトには大きな3つの不具合が生じた。
障害1:Wordpressのログイン画面が表示できない
障害2:Wordpressのカスタマイズボタンが使えない
障害3:Wordpressのプラグイン『WordPress Related Posts』のリンクが機能しない
障害1は、特定のサイトに発生し、障害2と障害3は全てのWordpressサイトに不具合として発生した。この3つの障害について、詳しく説明するとともに、その解決方法を書き留めておこうと思う。
▼【詳しい不具合の内容】
WordPressのログイン画面を全てブックマークにしているのだが、そのブックマークをクリックしてもロリポップからサーバーエラーが返されるようになった。エラー表示はいつもの『403 ERROR FORBIDDEN 指定されたページへのアクセスは禁止されています』というエラーメッセージがロリポップサーバーから返されるようになった。
▼【不具合の解決方法】
WordPressログインのために常にブックマークを利用していると、『ブックマークが使えない!?』と焦るもの。しかし、解決方法はシンプルで『サイトURL/wp-login』とURLを入力して、ログインページにアクセスすれば通常通りログインページが表示された。
▼【不具合の原因】
『Wordpressのログインページが表示されない』というよりも、ブックマークが使用できなくなった事そのものが原因だったので、URLを打ち直せばログインページが正常に表示された。この原因は、キャッシュにあるらしい。パソコンに詳しければ、ピンとくるのかもしれないが、新サーバーへの移設を行ったこととパソコン側のキャッシュとがどう関係するのがロリポップからの回答では納得できず表面的な解決となってしまった。
▼【詳しい不具合の内容】
Wordpressにログイン時に左上に表示される『カスタマイズ』ボタンをクリックすると、同じく『403 ERROR FORBIDDEN 指定されたページへのアクセスは禁止されています』というエラーメッセージがロリポップサーバーから返されるようになった。
▼【不具合の解決方法】
ロリポップに問合せたところ、セキュリティのWAF設定が原因の可能性があるとのこと(※WAFとは、Webアプリケーションのやり取りにおいて不正侵入を防御することのできるファイアウォールのこと)。 本来ならブロックしなくても良い管理者のアクセスまでも、ブロックしてしまっているということだ。WAFによる不具合の解決方法は2つ。
解決方法2 WAF設定から問題となるブロックを除外する
解決方法1 WAF設定を無効にする
・ロリポップにログイン後、左側の管理メニューから『WEBツール』を選択→『WAF設定』を選択する。
・WAF設定が開くと、ロリポップサーバーで管理しているURLが表示される。WAF設定を無効にしたいサイトのみ『無効にする』ボタンをクリックする。
解決方法2 WAF設定から問題となるブロックを除外する
・不具合が生じているサイトのサーバーフォルダ内にある「.htaccess」というファイルへWAFがブロックしないように追記する。カスタマイズボタンの使用時に管理人がブロックされてしまう不具合は、下記内容を追記することでWAFから除外することができる。
-------------------------------------
SiteGuard_User_ExcludeSig url-php-rfi
-------------------------------------
・ロリポップにログイン後、左側の管理メニューから『WEBツール』を選択→『ロリポップFTP』を選択する。該当サイトのフォルダを開くと、「.htaccess」のファイルがある。
・注意点は、「.htaccess」ファイルの最下に追記をした後に『改行』を必ず入れること。「.htaccess」ファイルは最後に改行が入っていないと正常に動作しないので要注意。
▼【不具合の原因】
直接的な原因は、WAFが管理者をブロックしてしまっていたことにあったのだが、なぜ新サーバーへの事前移設に伴って今まで問題がなかったWAF設定に影響が出たのか納得がいかなかった。ロリポップに再度問合せてみると以下のような回答が得られた。
・WAFバージョン変更に伴ってWAFの定義が変更された箇所があり、今回のように今まで問題のなかった動作についてWAFの対象となる現象が発生。
ロリポップの新サーバー事前移設に伴ってWAFのバージョン変更が行われていた模様。事前告知があってもいいのでは・・・。
解決方法は障害2のWAF設定関連と同じだが、「.htaccess」ファイルへの追記内容が異なるので要注意。まずは、不具合の内容。
▼【詳しい不具合の内容】
関連記事を自動表示するプラグイン『WordPress Related Posts』。記事は表示されるのだが、関連記事を開こうとクリックをすると『403 ERROR FORBIDDEN 指定されたページへのアクセスは禁止されています』と表示されてしまうようになったのだ。
▼【不具合の解決方法】
ロリポップに問合せたところ、2つ目の障害(WordPressのカスタマイズボタンが使えない)と同様にWAF設定が原因の可能性があるとのこと(※WAFとは、Webアプリケーションのやり取りにおいて不正侵入を防御することのできるファイアウォールのこと)。 WAFによる不具合の解決方法も同じく、2つ。
解決方法2 WAF設定から問題となるブロックを除外する
2つ目の障害の解決方法と異なる点は、解決方法2の「.htaccess」ファイルへの追記内容。
--------------------------------------------
SiteGuard_User_ExcludeSig bof-try-2
--------------------------------------------
「.htaccess」ファイルの最下に入力し、最後に改行を入れる。
【ロリポップを申込むなら・・・A8netが一番お得】
ロリポップから直接サーバーを申込ことももちろん可能だし、それがスタンダード。だが、もしもう一手間かけてもいいっていうなら、A8.netに無料登録してセルフバックという機能を経由するだけで初回契約の利用金額が30%~50%程度返ってくるのだ。A8.netは、サイトがなくても登録できる初心者歓迎のアフィリエイトASP。
関連リンク