【一般社団法人 ユアセル】お問い合わせフォームのエラー対応
はじめに
一般社団法人ユアセルの公式ホームページ(以下、HP)のお問い合わせフォームから送信されたメールが、フォームの作成者に届かない問題が発生しました。代表から対応を依頼され、原因調査と対策を実施しました。
環境
- HPは「さくらのレンタルサーバー」上でWordPressを使用
- お問い合わせフォームは「Contact Form 7」を使用
- 2024年3月以降、週1回届いていたメールが急に届かなくなった
- HPからのメールは
wordpress@yoursel.orgからyuaseru.hokkaido@gmail.com宛に送信される設定
調査のポイント
- サーバー上でメール送信の処理が正常に行われているか
wordpress@yoursel.orgというメールアドレスが、そもそも「さくらのメールサービス」上に存在しない- 2024年3月に何か設定変更があった可能性がある
実施したこと
1. ログの確認
まず、メール送信処理が正しく行われているかを確認するため、WordPressプラグイン「WP MAIL LOGGING」を導入しました。
ログを確認したところ、メールは正常に送信されていることが判明。
{
"mail_id": "1",
"timestamp": "2025-03-20 11:16:35",
"receiver": "mryuu.dev@gmail.com",
"subject": "ユアセル \"[your-subject]\"",
"message": "お問い合わせのテストです",
"headers": "From: ユアセル <wordpress@yoursel.org>",
"error": null
}→ 送信処理自体は成功しており、サーバーや「Contact Form 7」の設定ミスではないと判断
2. メール送信方式の調査
調査の結果、Contact Form 7のデフォルトのメール送信方式は PHPのmail関数。
しかし、
wordpress@yoursel.orgは実際に存在しないアドレスであり、- GmailではSPF/DKIM認証が適切でないメールをブロックする可能性がある
これらの理由から、メールが受信されていないと考えられました。
→ SMTPサーバー経由で送信する設定への変更が必要 であると判断。
3. SMTPによるメール送信への切り替え
SMTP経由でのメール送信を実現するため、以下の対応を実施しました。
- 返信用のメールアドレス
noreply@xxx.sakura.ne.jpを新規作成 - 「MP Mail SMTP」プラグインを導入し、さくらのメールサーバーのSMTP設定を登録
- Contact Form 7の送信元メールアドレスを
noreply@xxx.sakura.ne.jpに変更
→ これにより、メールが yuaseru.hokkaido@gmail.com に正常に届くようになり、問題が解決しました。
まとめ
- PHPのmail関数によるメール送信は、Gmailなどでブロックされる可能性がある
- SMTPサーバー経由で送信すれば、SPF/DKIM認証エラーを回避できる
- WordPressでメール送信の安定性を確保するには、「MP Mail SMTP」などのプラグインを活用するのがベスト
今回のインシデント対応を通じて、WordPressのメール送信の仕組みについて深く理解することができました。
同じような問題に直面している方の参考になれば幸いです。
Happy Hacking!