CG
(@du-bist-der-lenz)
アドミンバーの右上が”Hi, XXX”となっていることから、サイト言語がEnglishではないですか。サイト名が日本語名ではないでしょうか。
こんにちは
いくつか質問などがあります。
1)いつからそのような状態なのでしょうか?
おかしくなった直前に何かされていたのでしょうか?
2)collation と charset のエラーとは、どんなエラーメッセージでしょうか?
また、現在の collation と charset は何なのでしょうか?
3)cPanel で操作できるのであれば、Web サーバーのエラーログを見ることができるでしょうか。
何かエラーが出ていないかを確認してみてください。
トピック投稿者
1111
(@felicity1982)
ありがとうございます。こちら英語環境です。ですが稀に自分の日本製MACを使うことがあるのでcharsetなどが変更されてしまったのかなと思ってる次第です。
1)
はい、プロのWPエンジニアが自分のMAC(日本製)を使って下記作業をしました。
セキュリティのためphpmyadminよりprefixを変更->サイトを確認->みためはok
管理画面も大丈夫か確認したいが、wp-adminのパスワードを会社に忘れたのでphpmyadminからpwリセットしログインを試みる->なぜかログインできない(ログイン後にwp-adminではない通常のホームページにリダイレクトされる)。
ここから自身でプラグイン停止など(先述)をしてみるが成功せず。
2)
現在の設定
server connection collation: Utf8mb4_unicode_ci
server cahrset: UTF-8 Unicode (utf8)
phpmyadmin上のエラー
– mysqli_connect(): (28000/1045): Access denied for user ‘cpses_wylrdpxyqy’@’localhost’ (using password: YES)
– mysqli_real_connect(): (28000/1045): Access denied for user ‘XXXXXXXX’@’localhost’ (using password: NO)
– mysqli_real_connect(): (28000/1045): Access denied for user ‘XXXXXXXX’@’localhost’ (using password: NO)
Notice in ./libraries/classes/Config.php#855
Undefined index: collation_connection
Backtrace
./libraries/classes/Config.php#968: PhpMyAdmin\Config->_setConnectionCollation()
./libraries/common.inc.php#453: PhpMyAdmin\Config->loadUserPreferences()
./db_structure.php#14: require_once(./libraries/common.inc.php)
Notice in ./libraries/classes/DatabaseInterface.php#1501
Undefined index: charset_connection
Backtrace
./libraries/classes/Config.php#857: PhpMyAdmin\DatabaseInterface->setCollation(string ‘utf8mb4_unicode_ci’)
./libraries/classes/Config.php#968: PhpMyAdmin\Config->_setConnectionCollation()
./libraries/common.inc.php#453: PhpMyAdmin\Config->loadUserPreferences()
./db_structure.php#14: require_once(./libraries/common.inc.php)
Failed to set configured collation connection!
– mysqli_connect(): (28000/1045): Access denied for user ‘XXXXXXXX’@’localhost’ (using password: YES)
– mysqli_real_connect(): (28000/1045): Access denied for user ‘XXXXXXXX’@’localhost’ (using password: NO)
– mysqli_real_connect(): (28000/1045): Access denied for user ‘XXXXXXXX’@’localhost’ (using password: NO)
Notice in ./libraries/classes/Config.php#855
Undefined index: collation_connection
Backtrace
./libraries/classes/Config.php#968: PhpMyAdmin\Config->_setConnectionCollation()
./libraries/common.inc.php#453: PhpMyAdmin\Config->loadUserPreferences()
./db_sql.php#15: require_once(./libraries/common.inc.php)
Internal error in ./libraries/classes/ErrorHandler.php#80
– Too many error messages, some are not displayed.
Backtrace
3)
下記直近のものを抜粋しました。同じエラーが70-80件くらい出てしまっています。10/6の時点で全プラグインは停止しておりますが、10/7でもWP-hideによるエラーが出ているのは不明です。
[02-Oct-2019 18:40:16 UTC] PHP Warning: fread() expects parameter 1 to be resource, boolean given in /home/ XXXXXXXXXX /public_html/wp-includes/functions.php on line 5571
[02-Oct-2019 18:40:16 UTC] PHP Warning: fclose() expects parameter 1 to be resource, boolean given in /home/ XXXXXXXXXX /public_html/wp-includes/functions.php on line 5574
[05-Oct-2019 12:56:39 UTC] PHP Warning: Illegal offset type in isset or empty in /home/ XXXXXXXXXX /public_html/wp-content/plugins/ninja-forms/includes/Display/Render.php on line 134
[06-Oct-2019 18:18:47 UTC] PHP Warning: Invalid argument supplied for foreach() in /home/ XXXXXXXXXX /public_html/wp-content/plugins/wp-hide-security-enhancer/modules/components/general-admin-bar.php on line 23
[07-Oct-2019 15:55:17 UTC] PHP Warning: Invalid argument supplied for foreach() in /home/XXXXXXXXXX/public_html/wp-content/plugins/wp-hide-security-enhancer/modules/components/general-admin-bar.php on line 23
よろしくお願いします。
cPanelより全プラグインをdeactivate
ということですが、ログを見る限り ninja-forms と wp-hide-security-enhancer は有効なままのようですね。
cPanel についてあまり知らないのですが、FTP で プラグインのディレクトリ名を変更するなどしてプラグインを無効化してください。
うまくログインできないということなので、特に WP Hide & Security Enhancer については無効化して確認してください。
PhpMyAdmin のエラーについては、現在お使いの PhpMyAdmin のバージョンが分かりませんが、4.3.5 以降にアップデートしてみてください。
うまくログインできないこととは関係が無いのかな、という印象です。
参考:https://github.com/phpmyadmin/phpmyadmin/issues/11052
トピック投稿者
1111
(@felicity1982)
cPanelのfile managerを使ってplugin のディレクトリ名を変更し、無効化しました。cPanelは基本FTPと同じです。念のためwp-hideについては削除しましたが、状況変わらず。
ちなみにサーバーから勝手にインストールされる”Must-Use plugin”というものがあるのですが、無効化し忘れてたためdeactivateしましたが、状況はかわりません..
phpmyadminはversion 4.8.3なんです。
元も子もない話ですが、問題が発生する前のバックアップが存在するなら、それを戻したほうが早いかもしれません。
データベースの Prefix を変える際はChange Table Prefixを使うという選択肢もあるかもしれません。
/home/XXXXXXXXXX/public_html/wp-content/plugins/wp-hide-security-enhancer/
というディレクトリ名は、変更前のディレクトリ名ということですね。
[07-Oct-2019 15:55:17 UTC] が最後なので、現在はエラーログは出ていない、ということですね。
ちょっと原因が分かりません。
プロのWPエンジニアが自分のMAC(日本製)を使って下記作業をしました
ということですが、プロの仕事がうまくいっていないなら、そのプロに修正してもらうのがいいかと思いますが・・・
また、そのプロの方は作業前のバックアップなど取られていませんでしたか?
トピック投稿者
1111
(@felicity1982)
そうなんですよね。プロの方が作業前にデータベースのバックアップはとってるので、もう復元してるほうが早いかもしれません。(そのプロの方はボランティアでされてた方なので連絡先がわかりません。。)
プラグインのエラーはもうでてないので余計不明なんです。
復元していけるかどうかみてみます。
ありがとうございました。
トピック投稿者
1111
(@felicity1982)
この件、自己解決しました。
>>1)はい、プロのWPエンジニアが自分のMAC(日本製)を使って下記作業をしました。セキュリティのためphpmyadminよりprefixを変更->
ここが不完全でした。wp-configとTable prefixを変更したけれど、usermetaやoptionのprefixを変えてなかったみたいです。
このサイトがヒントになりました。
https://www.mysysadmintips.com/other/web/743-wordpress-admin-sorry-you-are-not-allowed-to-access-this-page
下記を参考に、自分で手動で変えて、ダッシュボードに入れました。大変勉強になりました。
https://www.wpbeginner.com/wp-tutorials/how-to-change-the-wordpress-database-prefix-to-improve-security/
みなさまありがとうございました。