phpcms v9登录失败怎么办

phpcms v9登录失败phpcmsv9全站 https ssl后会员登录失败解决方法

 

立即学习php免费学习笔记(深入)”;

很多朋友在使用phpcmsv9时候遇这样一个问题,在将全站https化后,会员中心无法正常登录,具体是没有返回值,提示登录失败,主是原来是系统在初始化phpsso时,无法将数据通过443传输到对应的方法,通过排查问题,可以看到在client.class.PHP中,系统默认使用的端口是80,所以我们只需要按以下方法修改就可以解决在https后会员无法登录的问题:

 

立即学习“PHP免费学习笔记(深入)”;

 

立即学习“PHP免费学习笔记(深入)”;

 

立即学习“PHP免费学习笔记(深入)”;

PHPCMS/modules/member/classes/client.class.php 

 

立即学习“PHP免费学习笔记(深入)”;

中361行修如下:

$port = !empty($matches['port']) ? $matches['port'] : ( strtolower($matches['scheme'])=='https' ? 443 : 80 );
登录后复制

 

立即学习“PHP免费学习笔记(深入)”;

第386行将:

$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);
登录后复制

 

立即学习“PHP免费学习笔记(深入)”;

替换为

 

立即学习“PHP免费学习笔记(深入)”;

$contextOptions = array(
    'ssl' => array(
        'verify_peer' => false,
        'verify_peer_name' => false
    )
);
 
//如果有签名的证书
//$contextOptions = array(
//    'ssl' => array(
//        'verify_peer' => trUE, 
//        'cafile' => '/PAth/to/cacert.pem',
//        //'CN_match' => 'indexroot.net', // 匹配域名
//        'ciphers' => 'HIGH:!SSLv2:!SSLv3',
//        'disable_comPRession' => true,
//    )
//);
 
$context = stream_context_crEATe($contextOptions);
$fp = stream_socket_client("ssl://{$host}:{$port}", $errno, $errstr, $timeout, STREAM_CLIENT_CONNECT, $context);
登录后复制

PHP中文网,大量的免费PHPcms教程,欢迎在线学习!

以上就是phpcms v9登录失败怎么办的详细内容,更多请关注慧达AI工具网其它相关文章

转载请说明出处 内容投诉内容投诉
慧达seo-站长工具-seo工具-采集-发布-AI文章生成发布工具 » phpcms v9登录失败怎么办

慧达AI专注站群seo管理工具

查看演示 官网购买