
本文介绍如何通过集成 google recaptcha 有效拦截自动化脚本对 php 联系表单的恶意提交,解决因未验证请求来源而导致的服务器端滥发邮件问题。
你当前使用的 PHP 表单处理脚本(mail() 函数)虽然结构清晰、具备基础的注入检测(如换行符过滤),但完全缺乏用户行为验证机制——这正是导致 Ionos 服务器每日向你发送大量“来自你自己的网站”的垃圾邮件的根本原因。攻击者无需访问前端页面,即可直接向该 PHP 脚本发起 HTTP POST 请求,绕过所有前端限制,批量伪造表单数据触发 mail() 发送。
单纯依赖 isInjected() 这类字符串检测已远远不够。现代垃圾邮件机器人能轻易规避简单正则匹配,且你的脚本未校验请求来源、无会话状态、无时效性控制,本质上是一个开放的邮件中继接口。
✅ 正确解决方案:在前后端协同加入 Google reCAPTCHA v3(推荐)或 v2,实现无感或轻量交互式验证。
第一步:注册 reCAPTCHA 并获取密钥
访问 Google reCAPTCHA Admin Console → 选择 reCAPTCHA v3(更友好,无用户交互)→ 注册站点,添加你的域名(如 amatoria.com, yoursite1.com, yoursite2.com)→ 获取:
- Site key(前端使用)
- Secret key(后端验证用,切勿泄露)
第二步:修改 HTML 表单(前端)
在










