こんにちは
管理画面をSSL化しているとのことですが、その設定を無効にしてみてください。
どこを変更したらSSLを解除できるのかは、SSL化していた方法によるので分かりませんが・・・
プラグインで実現されているのであれば、もしかしたら.htaccessを利用して実現されている可能性もありますので、プラグインディレクトリ名を変更しただけでは解除できないかもしれません。
ご回答、ありがとうございます!
やはりSSLが原因の可能性もあるのですね…。
ルートの.htaccessやFORCE_SSL_ADMIN定数なども書き換えてみたのですが、管理画面はhttpsに転送されてしまうのです…。
プラグインで実装している可能性もあるという事でしたので、「plugins」ディレクトリを違う名前にしたうえで再度試してみたいと思います!
ありがとうございます!
管理画面のSSLがどうやってもOFFになりません…。
ブラウザのキャッシュや他のブラウザをつかってもダメだったということから、サーバーの問題(nginx+リバースロキシなどを使っているケース)かもしれません。
またSSL化をどうやってやったのか分からないのは、管理運用上非常にリスクがある(今回のようなトラブル時に)ので、その原因を探してみて下さい。
プラグインなら、WordPress HTTPS が使われているかもしれませんし、そもそもデータベースでURLを置換されてしまっているかもしれません。
ご返信、ありがとうございます!
ご指摘いただいた通り、SSL化が不明なのは問題ですよね。
引き継ぎがうまくいっておらず、現在担当に調査してもらっております。
例えばプラグインでSSL化されていた場合、「plugins」フォルダを改名するなどしたら無効になるものでしょうか?
(改名は何度か試してみましたが、ダメでしたので…。)
ちなみに独自で調べたところ、「wp-login.php」内にSSL化をするような記述がありましたので、その辺りを触ってみたのですがSSL付きのURLに転送されてしまいます。
何か情報がありましたら、よろしくお願い致します!
wp-content > plugins の plugins フォルダをリネームすると、インストールしているすべてのプラグインが無効になります。
wp-login.php は触るような箇所はありません。
FORCE_SSL_ADMIN が設定されていて、それが有効の場合に https:// にリダイレクトするってことなので。
つまり wp-config.php に
define(‘FORCE_SSL_ADMIN’, true);
がなければ、wp-login.php ではリダイレクト処理は行われません。
.htaccess に HTTPSへのリダイレクトルールが書いていないか確認してみてください。
https://wpdocs.osdn.jp/%E7%AE%A1%E7%90%86%E7%94%BB%E9%9D%A2%E3%81%A7%E3%81%AE_SSL_%E9%80%9A%E4%BF%A1
が参考になります。
RewriteRule ^/?(wp-admin/|wp-login\.php) https://mysite.com%{REQUEST_URI}%{QUERY_STRING} [R=301,QSA,L]
のようなあるかどうかです。
それも無ければ後は、
1. サーバーでリダイレクト処理がされている
サーバーの設定を確認してみてください。
◯◯/wp-admin –> https://◯◯/wp-admin などのリダイレクトがされていたら、WordPressでいくら設定しても無駄です。サーバー設定変更が必要になります。
2. データベース内データのURL置換がされている
ここを変更されているとやっかいです。
元に戻すのを失敗するとデータが無くなってしまう恐れがあります。
ので試すなら別環境を用意して、そこでうまくいくかどうかを試してからにしたほうがいいです。
そのようなことが試せないなら、それに詳しい方に外部依頼したほうがよいです。問題がかなり複雑かもしれませので。
詳細なご回答、ありがとうございます!
まずは.htaccessですが、サイト全体をhttps化するための記述がありますので、そこは一旦コメントアウトしました。
そうすることでフロントページはhttpsにリダイレクトされなくなったのですが、管理画面だけはhttpsにリダイレクトされてしまいます…。
サーバーの設定なのですが、私が普段取り扱っているサーバーと違って「AWSサーバー(https://aws.amazon.com/jp/s3-hosting/)」らしいのです。(「らしい」というのは私が後任のためです。)
コントロールパネルのようなページにログインはできたのですが、ほとんどが日本語化されていない作りでしたので、何も手出しができませんでした…。
データベースも上述した通りで、phpMyAdminが入っているかどうかも分からず仕舞いでした…。
書き忘れましたが、ほとんど同じ構成のテストサイトはありまして、そちらではアップデートに成功しております。
違う点といえば、そちらはSSLがかかっていないという事です。
なのでSSLが原因ではないかと踏んでいるのですが、いかがでしょうか?
ご協力いただいたおかげで解決しました!
参考にさせていただいたサイトはこちら(http://qiita.com/hirror/items/bb96e236c3ffc41e890e)で、「無限リダイレクトループ」という現象でした。
kimipooh様が書いてくださった「nginx+リバースプロキシなどを使っているケース」だったようです。(未だに【リバースプロキシ】の意味は分かっておりませんが…。)
ご協力いただきましたmunyagu様、kimipooh様、本当にありがとうございました!
このトピックが同様の症状で悩んでいる方の助けになりましたら幸いです。
まずはうまく解決してなによりでした。
スマホからなので、参照先とか細かい説明までできませんが、リバースプロキシはキャッシュの一部と理解したらと思います。
キャッシュ系プラグインはWordPress 内にキャッシュファイルをおきますが、リバースプロキシはウェブシステムの側に持ちます。
プロキシはインターネット側にでるときに中継することで、リバースプロキシはインターネット側から内部に中継するときにつかいます。
Nginxにおけるリバースプロキシとは、ウェブサイトにアクセスしたとき直接接続せず、ウェブサイトのある場所へと中継します。
その過程でキャッシュして、一定期間は同じページにアクセスした場所キャッシュデータを見せるということをします。
WPのようにアクセスするたびに動的にページを作成してから表示すると、大量アクセスがあると無駄な負荷ぎサーバにかかります。
それで重くなったりしがちですが、これを一度作成したらキャッシュとして一定期間残して、次のアクセスはキャッシュを見る。これで負荷を減らして表示を早くするのですね。さらにリバースプロキシは攻撃を受けやすいウェブシステムをインターネットから遮断し、そのウェブシステム上のサイトにアクセスげあると、中継したりできます。つまり、セキュリティ対策としても使われます。
10のウェブシステムを守るより、1のリバースプロキシを守るほうがコストも軽減できますからね。
そんな感じにつかわれます。
ただし一定期間はキャッシュされるので、その間記事が更新されても反映されません。
即時更新はリバースプロキシのキャッシュを削除しないといけず、nginx cache controllerプラグインなとで記事更新時などに自動でリバースプロキシのキャッシュを消すようにしないといけません。