【WordPress】コメントを入れるところがないのにコメント(スパム)が来る件

Posted by Akkey on 2025/11/09

このホームページはコメントを入れるところを作ってないんですが、管理サイトをみるとコメントが19件。

しかしコメントの内容をみると全部謎サイトへのリンクURLのみ。

チャッピーに確認すると、やはりスパムの可能性が高いとのこと。全てスパムとして廃棄しました。

そういやスパムメールって何?

気になってチャッピーに聞いてみました。

「スパムメール(spam mail)」っていうのは、受け取りたくもないのに勝手に送られてくる迷惑メールのことです。もともと「spam」という言葉は、イギリスのコメディ番組で“同じ言葉をしつこく繰り返すネタ”から来ていて、そこから「しつこく・無差別に送りつける迷惑なもの」=スパム と呼ばれるようになりました。

なるほど。迷惑メールなんだろうな、くらいな感じだったんだけど、語源がイギリスのコメディ番組とは初めて知りました。Youtubeにそのコメディ番組ないかな。スパム、スパム騒いでたら面白いな。あとで調べてみよっと。


スパムメールへの対処

さて、話はそれましたが、どうやらWordPressでコメントを入れる入力エリアを閉じてもコメントを登録するAPIは生きているため、スパムはそれらを直接呼び出すことでコメントを登録しているとのこと。WordPressのような汎用的な仕組みはこうなりがちですよね。

WordPressは記事にコメントを投稿する際に、フロントのフォーム → サーバー側のAPI wp-comments-post.phpというルートで処理するため、入力欄を閉じてもこのwp-comments-post.phpに直接POSTされてしまうとコメントが登録されてしまうってわけですね。

というわけで対策していきます。WordPressのプラグインにもスパムメール対策のものがある模様ですが、このサイトはコメントを閉じてるので、wp-comments-post.phpへのアクセス自体を無効にしちゃいます。

はい。アクセス制限ってことはWebサーバー(Apache)の設定ですね。.htaccessに以下を記載します。

<Files "wp-comments-post.php">
    Order Allow,Deny
    Deny from all
</Files>

私の環境だと

/var/www/html

にありました(ちなみに隠しファイル扱いなのでla -a のオプションをつけないと見られないよ)。viかなんかで編集して保存。Apacheの再起動は不要。

あとはcurlでwp-comments-post.phpを叩いてみて403エラーが返ればOK!

curl -I  https://akkeys-lifework-lab.com/wp-comments-post.php
HTTP/2 403

ほかにもコメントの入口があるみたいだけど、まだ来るようだったら考えます!