这篇文章主要介绍phpcms v9通信失败的解决方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
phpcms v9通信失败怎么办?Phpcms v9 与 Phpsso通信失败,会员不能注册不能登陆怎么办?
有朋友这么说:
服务器其它配置正确,通信始终失败原因已经找到:
由于有防火墙的服务器一般是端口映射,这样就导致外网可以通过域名正常访问网站,而内网则无法通过域名访问网站。而v9与phpsso通信接口地址是通过域名链接,从而始终导致通信失败。这是v9的自身缺陷问题,开发者没有充分考虑到这一点。
望官方尽早修复这个BUG.
也有朋友说:
官方下载的安装包内phpsso_server文件里,并没有这个文件。所以解决的方法就是从v9的phpcms/libs/classes/文件夹里复制吧,然后还要在phpsso_server/caches/文件下建一个sessions目录,不然文件无法写入。
当然网上也有方法是把session_mysql.class.php这个文件里的第21行语句session_start();放到它前一句的前面,这样的话,也可以解决,但是v9不会采用数据库存储的方式,只会采用文件存储,而且,session的存储位置也不是按照system.php里设置的位置存储。会存到php.ini文件里设置的目录下。
提供一个解决方法:
把phpcms\modules\member\classes\client.class.php 361行
$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);
改成
$fp = stream_socket_client("tcp://".($ip ? $ip : $host).":".$port, $errno, $errstr, $timeout);
经过测试,可以登陆成功。
这个问题不少朋友碰到,不过在Linux阿帕奇下,这个问题比较少。
以上是phpcms v9通信失败的解决方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。