◈コメント認証画像が気まぐれすぎる!


WordPressプラグイン、SiteGuard WP Pluginの画像認証(CHPTCHA機能):
コメント投稿時に表示されるコメント認証画像が気まぐれすぎる! 状態に 


コメントの(CAPTCHA)文字画像が/表示される/表示されない/がランダム出現状態に!

問い合わせフォームのスパム攻撃や嫌がらせ対策!として、(一部抜粋になりますが)以下の環境です。

 [Akismet Anti-Spam(ウィルス対策)]
 [reCAPTCHA(Bot対策)]
 [Contact Form 7]
 [SiteGuard WP Plugin(セキュリティ向上)]


1. 一時しのぎの とりあえず修復させるだけなら

ディスカッションを「オフ」にする→更新後、再度「オン」にする。
クイック編集から、「コメントを許可」を一度オフにする→更新後、再度「オン」にする。

どちらも同じことですが、これをすることで、<コメントの(CAPTCHA)文字画像認証」が即表示されます。しかし、また何度かアクセスするたびに表示されない/表示される、となります。

Localで見ると問題がないが、Web上でアクセスするたびに表示されたり、されなかったり、つまり完全に表示されないわけではないという状態が続いています。①と②が大きなヒントになると思っているのですが。

2. 基本的な原因を特定するための初歩的作業

各種設定内容、使用しているプラグイン等、環境も人それぞれ違うわけで、原因もそれぞれ。

1. プラグインの競合

①SiteGuard WP Plugin と Contact Form 7 + reCAPTCHA が競合している可能性。
一度 SiteGuard を無効化して、CAPTCHAが正常に表示されるか確認。
これでもし表示されるようであれば、SiteGuardの設定が影響している可能性あり。
②SiteGuardがスクリプトの読み込みをブロックしていたり、何らかの制限をかけている可能性もあるので、その設定も確認。

注意! プラグインによっては、一度オフにすることでそれまでの設定が既定値に戻ってしまうものがあります。簡単にオン/オフを切り替えて試すのはなるべく避けたい私・・・。

2. reCAPTCHAの設定確認

①Google reCAPTCHAの設定(v2やv3)が正しいか確認。
②APIキー(サイトキーとシークレットキー)が正しく設定されているか、Contact Form 7で再確認。
③GoogleのreCAPTCHAダッシュボードで、自分のドメインが正しく登録されていることも確認。

3. キャッシュやCDNの影響

①Ctrl + F5 でブラウザキャッシュを削除しても、サーバー側や**CDN(Cloudflareなど)**が古いバージョンのページをキャッシュしている場合があるので、サーバーキャッシュやCDNキャッシュを削除してみる。また、CDNを一時的に無効化して確認してみる。

4. JavaScriptのエラー確認

①CAPTCHAが表示されないページで、ブラウザのJavaScriptコンソールを確認→エラーが表示されている場合、そのエラーが原因でCAPTCHAが読み込まれていない可能性あり。

②JavaScriptのエラーが出ている場合、プラグイン間の競合やスクリプトの読み込み失敗が原因かも。

5. テーマやカスタムコードの影響

①使用しているテーマやカスタムコードがCAPTCHAの表示に干渉している場合あり。
テーマを**デフォルトテーマ(Twenty Twenty-One など)**に変更して、再度CAPTCHAが表示されるか確認→もし表示されるようなら、テーマに問題があるかも。

6. サーバー設定の確認

ローカル環境では正常に表示されているのに、サーバー環境では表示されない場合、サーバー側の設定が原因である可能性あり。
特にPHPの設定やmod_security、ファイアウォールが影響していることがある。

7. 他のフォームプラグインでのテスト

①Contact Form7以外のフォームプラグインでreCAPTCHAを設定し、正常に表示されるかテストしてみる。
これにより、Contact Form 7側の問題かどうかを切り分けることができる。

原因の追究・・・
コンソールの内容から着目した点

コメントフォームが表示された時点で画像が生成されている事実。
しかし、それが投稿時にはすでに削除されているため表示できない可能性。
つまり、削除されるタイミングが早すぎるのが原因。

そして・・・
ついにたどり着いた、原因はこんなところに!

使用しているプラグインWP-Optimizeの「ページキャッシュを有効にする」のON→OFFにする、でした。
(今のところ)順調に表示されるようになりました

コメント欄の(CAPTCHA)文字画像認証」の動きが少し見えた!