XO Securityでログインログが取れない
-
XO Securityでログインログが取れません。
全てのプラグインを停止しても、解消されませんでした。
また、ログインログの取れないサイトはすべてサーバーがwpxspeedです。
※ほぼ同じサイト(WPやテーマをコピーして作成した双子のようなサイト)で試したところ、wpespeedに入ってるサイトではログが取れませんが、エックスサーバーに入っている方は、ログインログがちゃんと取れました。以上からwpxspeedが原因かとは推測していますが、これ以上が手づまりでして・・・
何か設定の変更など手立てはありませんでしょうか?
(WAFをoffでもだめでした)
アドバイスいただけますと幸いです。
-
【追記】
すみません、補足です。
今まで狂骨を使用しておりまして、そちらはwpxspeedでもログを取れておりました。こんにちは
wpX Speed の「サーバーキャッシュ」が影響しているのかもしれません。
「キャッシュ除外設定」で、下記のファイルパスを設定してみてください。/wp-content/plugins/xo-security
ありがとうございます!
開発者様からご回答いただけて有難いです!ただ・・・残念ながらご教授いただいた方法では解消しないようです。
反映に時間がかかる?と思って少し待っては見たのですが・・・
ひとまず時間をおいて再度確認してみますが、取り急ぎお礼まで。現行バージョン (3.4.2) では、パスワードが空の場合、ログに記録していません。もしかしたらこれが原因かもしれません。
パスワードが空の場合でもログに記録するように変更 (修正ですね💦) したバージョンを一両日中にはリリースしたいと思います。その折は是非チェックして頂ければと思います。わざわざ修正頂き本当にありがとうございます!
お手を煩わせてしまって恐縮です。ただ、やはり解消されないようでして・・・(更新でダメだったので、念のため入れ直しもしてみたのですが・・・)
wpxspeedのエラーログを見ましたら、エラーが出ていました。
エラーログについてwpxspeedに問い合わせをしてみましたのて、進捗がありましたらご連絡させて頂きますね。一応、一部関係ありそうな部分を以下に転記致します。
WordPress Table '●●●.wp_xo_security_loginlog' doesn't exist for query SELECT count(*) FROM
wp_xo_security_loginlogmade by require_once('wp-admin/admin.php'), do_action('users_page_xo-security-login-log'), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security_Admin->login_log_page, XO_Login_Log_List_Table->prepare_itemsPHP message: WordPress: Table '●●●.wp_xo_security_loginlog' doesn't exist for query SELECT
id,
success,
login_timeAS
logintime,
ip_addressAS
ipaddress,
login_typeAS
type,
lang,
user_agentAS
useragent,
user_nameAS
username,
failed_passwordAS
failedpasswordFROM wp_xo_security_loginlog ORDER BY
logintimedesc LIMIT 0, 100; made by require_once('wp-admin/admin.php'), do_action('users_page_xo-security-login-log'), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security_Admin->login_log_page, XO_Login_Log_List_Table->prepare_items', referer: ●●●/wp-admin/plugins.php
XO Security プラグインはインストール時にログの記録用にデータベースにひとつのテーブル(wp_xo_security_loginlog)を作成するのですが、そのテーブルの作成に失敗しているようです。
このエラーメッセージからは作成に失敗している原因まではわかりません。他にそれらしいエラーはでていませんでしょうか?お手数おかけしますが、ご確認いただければと思います。度々ありがとうございます。
wpxspeedの設定で、phpの関数制限というのがありましたので、それをすべて解除した状態で、インストールしなおしてみたところ、以下のエラーログがありました。
度々お手数をおかけして恐縮です。ありがとうございます。Got error 'PHP message: WordPress データベースエラー: Index column size too large. The maximum column size is 767 bytes. for query CREATE TABLE wp_xo_security_loginlog (
idbigint(20) unsigned NOT NULL AUTO_INCREMENT,
successboolean NOT NULL DEFAULT '0',
login_timedatetime NOT NULL DEFAULT '0000-00-00 00:00:00',
ip_addressvarchar(46) DEFAULT NULL,
login_typetinyint(1) DEFAULT '0',
langvarchar(5) DEFAULT NULL,
user_agentvarchar(255) DEFAULT NULL,
user_namevarchar(255) DEFAULT NULL,
failed_passwordvarchar(255) DEFAULT NULL,PRIMARY KEY (
id`),KEY success(success),KEY login_time(login_time),KEY ip_address(ip_address),KEY user_name(user_name)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; made by activate_plugin, plugin_sandbox_scrape, include_once(‘/plugins/xo-security/xo-security.php’), XO_Security->__construct, XO_Security::activationPHP message: WordPress データベースエラー: Index column size too large. The maximum column size is 767 bytes. for query CREATE TABLE wp_xo_security_loginlog (
id
bigint(20) unsigned NOT NULL AUTO_INCREMENT,success
boolean NOT NULL DEFAULT ‘0’,login_time
datetime NOT NULL DEFAULT ‘0000-00-00 00:00:00’,ip_address
varchar(46) DEFAULT NULL,login_type
tinyint(1) DEFAULT ‘0’,lang
varchar(5) DEFAULT NULL,user_agent
varchar(255) DEFAULT NULL,user_name
varchar(255) DEFAULT NULL,failed_password
varchar(255) DEFAULT NULL,PRIMARY KEY (id
),KEY success(success),KEY login_time(login_time),KEY ip_address(ip_address),KEY user_name(user_name)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; made by activate_plugin, do_action(‘activate_xo-security/xo-security.php’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security::activation’, referer: https:/domain/wp-admin/plugin-install.php?s=xo&tab=search&type=termGot error ‘PHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT count(*) FROM
wp_xo_security_loginlog
made by require_once(‘wp-admin/admin.php’), do_action(‘users_page_xo-security-login-log’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security_Admin->login_log_page, XO_Login_Log_List_Table->prepare_itemsPHP message: WordPress データベースエラー:: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT
id
,success
,login_time
ASlogintime
,ip_address
ASipaddress
,login_type
AStype
,lang
,user_agent
ASuseragent
,user_name
ASusername
,failed_password
ASfailedpassword
FROM wp_xo_security_loginlog ORDER BYlogintime
desc LIMIT 0, 100; made by require_once(‘wp-admin/admin.php’), do_action(‘users_page_xo-security-login-log’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security_Admin->login_log_page, XO_Login_Log_List_Table->prepare_items’, referer: https://domain/wp-admin/plugins.php?plugin_status=all&paged=1&sGot error ‘PHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SHOW FULL COLUMNS FROM
wp_xo_security_loginlog
made by wp_signon, do_action(‘wp_login’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security->handler_wp_login, XO_Security->successful_loginPHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query DELETE FROM wp_xo_security_loginlog WHERE
login_time
<= DATE_SUB(NOW(), INTERVAL 365 day) made by wp_signon, do_action(‘wp_login’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security->handler_wp_login, XO_Security->successful_loginPHP message: WordPress データベースエラー:: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT COUNT(*) FROM wp_xo_security_loginlog made by wp_signon, do_action(‘wp_login’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security->handler_wp_login, XO_Security->successful_login’, referer: https://domain/wp-login.php?loggedout=true&wp_lang=ja
Got error ‘PHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT
login_time
FROMwp_xo_security_loginlog
WHEREuser_name
= ‘concord01_admin’ ANDsuccess
= 1 ORDER BYlogin_time
DESC LIMIT 2; made by wp_dashboard, do_meta_boxes, XO_Security_Admin->dashboard_login_widgetPHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT COUNT(*) FROM
wp_xo_security_loginlog
WHEREsuccess
= 0 ANDlogin_time
>= ‘2022-12-03 18:44:52’; made by wp_dashboard, do_meta_boxes, XO_Security_Admin->dashboard_login_widgetPHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT
login_time
FROMwp_xo_security_loginlog
ORDER BYlogin_time
ASC LIMIT 1; made by wp_dashboard, do_meta_boxes, XO_Security_Admin->dashboard_login_widget’, referer: https://domain/wp-login.php?loggedout=true&wp_lang=jaGot error ‘PHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT count(*) FROM
wp_xo_security_loginlog
made by require_once(‘wp-admin/admin.php’), do_action(‘users_page_xo-security-login-log’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security_Admin->login_log_page, XO_Login_Log_List_Table->prepare_itemsPHP message: WordPress データベースエラー: Table ‘DBname.wp_xo_security_loginlog’ doesn’t exist for query SELECT
id
,success
,login_time
ASlogintime
,ip_address
ASipaddress
,login_type
AStype
,lang
,user_agent
ASuseragent
,user_name
ASusername
,failed_password
ASfailedpassword
FROM wp_xo_security_loginlog ORDER BYlogintime
desc LIMIT 0, 100; made by require_once(‘wp-admin/admin.php’), do_action(‘users_page_xo-security-login-log’), WP_Hook->do_action, WP_Hook->apply_filters, XO_Security_Admin->login_log_page, XO_Login_Log_List_Table->prepare_items’, referer: https://domain/wp-admin/`サーバの MySQL のバージョンが古い(5.5.14 前)か、MySQL の設定でキープレフィックスのサイズが 767 バイトに制限されているため、テーブルの作成に失敗しているのが原因のようです。
MySQL をバージョン5.5.14 以上にアップグレードするか、キープレフィックスのサイズを増やすことことができればいいのですが可能でしょうか?インデックス サイズを削減したバージョン(3.4.4)をリリースしました。
今回リリースしたバージョンで MySQL 5.5.14 前のバージョンでも動作するようになったと思います。お手数おかけしますが、ご確認いただければと思います。何と・・・ありがとうございます!
wpXspeedに問い合わせている間に・・・ここまでご対応頂けるとは感激です。
おかげ様でログも取れるようになりました。
いろいろ考慮した結果、XO Securityがベストだと思っていたので、本当にありがたいです。尚、wpXspeedでは、DBのバージョンアップは個別では行えないそうです。
(現在はMariaDB5.5.68です。)
MySQLを弄ることも恐らくできなそうです。(問い合わせ中ですがお返事が止まってしまいました)手詰まりか・・・と思っていたので本当にありがたいです、
心より感謝申し上げます。ありがとうございました。
- トピック「XO Securityでログインログが取れない」には新たに返信することはできません。