ecshop微信token验证失败 解决方法

下面这些解决方法是通过某官方给出 的解决方法,然而

遇见所有方法都用上了,还是没办法解决问

看下

一:ec系统安装时php环境版本最佳是5.2或5.3,如果你的php版本>5.3(这个很重要)

下面问题来了

allow_call_time_pass_reference boolean

在函数调用时参数被按照引用传递时是否发出警告。此方法已不被赞成并在 PHP/Zend 未来的版本中很可能不再支持。

5.4.0 从 PHP 中移除。
所以,

要么降php版本到5.2 或 5.3

降不了版本的情况是下面 

二:CentOS 7.X系列已不支持php 5.2/5.3的版本,如要使用5.2/5.3的老版本,要使用6.X的OS

这时无法降版本,安装官方说所加入allow_call_time_pass_reference = On行不通的情况下,那么

就直接修改代码

当我们这样使用函数(或者类)的话,会产生一个error:

foo(&$var);

实际上,这样用本来就是错的,只是之前的错误级别仅仅是Deprecated而已。

而正确的使用方法应该是在函数定义时:

function foo(& $var) {
   //other code
}

而在调用时直接传参就行了: foo($var);
就安装上面形式找到类似使用的位置进行修改,就可以了

小jd的问题在这个函数的引用上

$api->keywordsToKey(

针对客户在对接微信公众号时,微信公众号提交开发者时,提示token验证失败错误,测试处理方法:

 

         首先,确认域名是否备案成功,不是正式域名是不能支持配置的。

 

         其次,检查服务器上是否安装:网站安全狗,360安全卫士,防火墙等软件,此类软件必须关闭。

 

         第三,微信Token与后台填写的Token不一致,一般默认设置为:qphp。

 

         第四,mobile目录下weixin文件夹以及子文件需要“777”权限。

 

 

         第五,在mobile/weixin/index.php文件下增加代码:echo $_GET['echostr'];exit;,如图:(注意:提交成功后撤销刚才添加的代码)

 

 

         

 

         第六,可能微信服务器的响应存在缓存,微信公众平台上多次提交微信或更换浏览器再次提交。

 

 

         第七,查看下边文件的编码格式:weixin文件夹下的index.php、  wechat.class.php  ,注意编码格式要UTF-8的编码格式。

 

         ,针对linux服务器需要修改php.ini配置文件:

 

               1. 在PHP.ini中搜索关键字 : allow_call_time_pass_reference 没有的自行建立。

 

               2. 将 Off 改成 On ,Web Server重起就OK了,结果如下:

 

               allow_call_time_pass_reference = Off 变成 allow_call_time_pass_reference = On。

 

动手行动吧!



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值