アクセス制限とURLミスのエラー
右往左往してたどり着いた結論としては、アクセス制限によるものでした。アクセス制限+セキュリティプラグインでURLを変更し、ブックマークしていたURLが違っていたという結果。
ただ、なぜブックマークしていたURLが変わったのか、もしくはその前まで、なぜログインできていたのかは原因不明。
経緯
それは突然起こった。週末まで普通に作業できていたのに、週明け、朝から作業を再開しようとログイン画面を開くと、トップページしか表示されない。ログイン画面を開いているのに、トップページという謎現象。そしてよくある、末尾をwp-login.php/wp-adminにしてみると、「利用できません」と表示された。シンプルな拒否画面、初めて見ました。
訳が分からず、ログイン画面が表示されない場合の対策としてよくあるのは、全てやりきってもエラー。
- ログインURLが間違っている→ブックマークからなので間違っていない(と思っていた)
- wp-login/wp-adminの末尾でログインを試みる→トップ画面、そして「利用できません」となった
- Webサーバーのインストール確認画面のURLからログインしてみる→利用できません
- キャッシュが残っている→毎度クリアしているので違う
- ログインID・パスワードが間違っている→そもそもログイン画面の話じゃない
- Cookieのせい→これも違う
- .htaccessのせい→消したりしてもダメ
- プラグインのせい→全部オフにしてもダメ
- config.phpの記述にエラーがある→確認・修正してもダメ
- デバックモードで表示する→何も表示されない
時間があったからよかったものの、過去経験したことのない不明なエラー。
しかも、「Wordpress 利用できません」という検索ワードの表示すらなく、誰も遭遇したことがないのだろうか、という現象で涙。Wordpressの掲示板へ書こうにも、現象が把握できないので説明できない。。
新たにWordpressをインストールして見えてきたもの
新たにWordpressをダウンロードして、データを入れ替えようかなと思い始めた頃、サーバーの設定を血眼で確認。
WordPressのデータの入れ替えが大変なので、Wordpressを別のディレクトリにインストールした時、ディレクトリ名を設定したことで気づいた。新規にインストールしたWordpressはどうもURLがおかしい。初期ドメインのURLになっており、任意のファイルをWebブラウザ表示で開くと、独自ドメインのURLになっていない。
そこで、ドメインが怪しいとWEB公開フォルダ(今回はさくらのサーバー)を見ると、新規で入れたWEB公開フォルダに変わっている。これはおかしい。
こんな状況の最中、自動更新の通知が来る。ということは、バージョンの問題でもない。
WEB公開フォルダを修正して解決?
公開フォルダを、おぼろげな記憶の初期設定に戻すと、久々のログイン画面、キター。
全く身に覚えのないエラーに今回は流石にまいった。なぜWEB公開フォルダが変わってしまったのかは不明。新規でインストールをしてことで、Wordpressが重複したためか?自動更新の影響か?セキュリティの問題でもなかった(未公開かつアクセス制限しているし、ログイン履歴を見ても自分だけなので、外部の侵入でもなさそう)。
そして、翌日またログインできない状況に。。。
プラグインのせい?
翌日再び「利用できません」。なんで!
翌日、進化した自分は気づき始めた。ログイン画面で、アクセス制限の画面は開くので、フォルダ/ディレクトリ単位では間違っていない。アクセス制限を突破した後に表示されるので、Wordpressは機能している。となると、やはりプラグインが怪しい。一括でプラグインをオフにしたのに、検証がうまくいかなかったのも謎だけど、アクセス制限関係で言えばセキュリティが怪しいということで、All In One WP Security & Firewallだけオフにしてみた。
そうすると、ログイン画面。やっぱりAll In One〜の何かの設定か、と確認する。まさかの変更したURLを見てみたら、どうも一文字違っている。変更後すぐにブックマークしたURLには「?」が1文字入っている。
・・・・・・・意味不明。まして、今の今までURLはブックマークからログインできていたのに、一体いつからクエスチョンマークが紛れ込んだのか、謎。
そして、1文字のクエスチョンマークを削除して、再度アクセスしてみたら、問題なく通常運行。
まとめ
おそらく、アクセス制限をかけたことで、アクセスは出来るもログインURLが間違っていたため、404ページもまだ設置していなかったことから、「利用できません」と表示されたと思われる。試しに404ページを作成してみたら、「?」1文字入れてもトップページとなり、404ページが正常に機能されず。
また、All In One〜をオフにしたことで、ログインURLが通常に戻りログインが出来たので、プラグインによるURL変更とアクセス制限が相まって、混乱してしまったと思われる。
functionsやコードの問題だったり、404やデータベースエラーなど、エラーが表示される問題なら割と対応できるもんだなと感じる。
今回はエラーの原因をも表示されないエラーだったので、とても大変だった。肝は座ったものの、こんなことは、きっとまた、他の人には起こりえなさそうなエラー。ただ、Wordpressで「利用できません」と表示された時は、サーバー関係の基本的な設定や、ログインのURLを再度よく、見直した方がいいという知恵を得た。
ちらっと英語で検索したら、英語のページでは事例がたくさん!英語で調べて見る、というのも一つの解決方法。World WideなWordpressだからこそ、解決策もたくさんあるありがたさ。
そして、ズバリ「セキュリティでURL変更してるんじゃないの?プラグインオフにしてみたら?」と。
基本的にセキュリティプラグインによるURL変更が原因が多い事例でした。
Comment