本文介绍部署在ECS实例中的微信公众平台Token验证失败常见原因分析及解决方案。
问题现象
部署在ECS实例中的微信公众平台Token验证显示失败。
问题原因
常见的可能原因如下:
非正常编辑文件,如记事本、在线编辑等操作导致文件中添加了utf8的bom签名。
ECS实例如果安装了安全狗或者云安全中心,会拦截腾讯服务器的请求。
虚拟主机使用临时域名去验证导致被系统拦截,适用于万网的虚拟主机。
PHP文件结束符后包含换行或其他字符。
使用了其他的调试验证方法。
程序Gzip加密异常。
解决方案
常见原因对应建议处理办法如下:
非正常编辑文件,如记事本、在线编辑等
建议使用多功能编辑器去除bom。
ECS实例安装了安全狗或者云安全中心
建议卸载安全狗,或者提示云安全中心设置白名单。
虚拟主机使用临时域名去验证
建议使用已经接入阿里云备案的正式域名来进行验证操作。
PHP文件结束符后包含换行或其他字符
建议去除多余的字符。
使用了其他的调试验证方法
执行以下命令,进行调试验证,模拟微信请求API,并对此进行分析。
curl http://xxx/index.php/api/xx
程序Gzip加密异常
建议临时取消程序Gzip功能,进行测试排查。
文档内容是否对您有帮助?