二开教程 Development

提供PHPCMS常用模块的二次开发,改造,升级都修改过程代码

分享PHPCMS出现无法登录、注册解决办法

 admin  2023-08-24 12:23:22

我的PHPCMS突然现出无法登录、注册的问题,经常不懈的努力终于解决,现在分享给大家,有需要的朋友可以参考.

环境:

操作系统:Linux

服务器软件:nginx/1.1.16PHP/5.3.27

MySQL 版本:5.5.34-log

PHPCMS程序版本:Phpcms V9.5.7 Release 20140625

问题:

本地:本地调试一切正常

服务器上:PHPCMS中PHPSSO通信成功,无法进行账号注册、登录,通过跟踪代码发现下面代码中返回的的$fp为空值.

$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);

fsockopen函数替换为pfsockopen函数返回值仍为空,经过搜索,发现原来是因为fsockopen函数和pfsockopen函数存在安全问题,已被服务器禁用.

安全通知公告网址:http://www.xrnet.cn/store/2012-01-10.html

解决办法:

用其他函数代替fsockopen、pfsockopen函数,比如stream_socket_client,示例如下.

  1. //修改前: 
  2.  
  3. $fp = fsockopen($host, 80, $errno$errstr, 30); 
  4.  
  5. //或 
  6.  
  7. $fp = fsockopen($host$port$errno$errstr$connection_timeout); 
  8. //修改后: 
  9.  
  10. $fp = stream_socket_client("tcp://".$host."80"$errno$errstr, 30); 
  11.  
  12. //或 
  13.  
  14. $fp = stream_socket_client("tcp://".$host.":".$port$errno$errstr$connection_timeout); 

注释:DISCUZ通信失败也有可能是因此原因.

 

本文《分享PHPCMS出现无法登录、注册解决办法》发布于PHPCMS管理系统文章,作者:admin,如若转载,请注明出处:https://www.phpcms.vip/help/doc/822.html,否则禁止转载,谢谢配合!