Discuz论坛开启HTTPS(SSL)后UCenter通信失败的解决方法
[重要通告]如您遇疑难杂症,本站支持知识付费业务,扫右边二维码加博主微信,可节省您宝贵时间哦!
今天淘宝来的客户,说自己的Discuz论坛与UCenter通信失败是啥问题,说真的,好久没有玩过Discuz,这东西十多年前还是经常玩的,现在很少碰,准确的说从被腾讯收购后就没在咋玩过,有人要问,那就必须要解决此问题哇,具体看了一下,看到了域名是开启了https,可能给自己的感觉一下就认为是Https的问题,后来询问客户,说以前也有开过,估计是https与http都可以打开的吧,具体没有想象询问,就看了下问题,还是从https入手,具体解决方式如下;
具体看图,错图如下:
打开目录 uc_server/model/misc.php 文件;在misc.php中搜索以下的代码;
$port = !empty($matches['port']) ? $matches['port'] : 80;
在这段代码下面加上以下的代码:
f(substr($url,0,5)=='https'){
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if($post){
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
}
if($cookie){
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
}
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
return curl_exec($ch);
}
修改misc.php后,保存并上传替换掉原来的misc.php文件,即可解决Discuz开启HTTPS站点后UCenter通信失败的问题,具体请看下面的图片;
延伸阅读:
PS:登陆后台https://www.laoliang.net/uc_server 在后台的通讯里面 Discuz论坛的通讯网址是打开Discuz的网址,最后不带任何的/或者其他文字的哦,唯一注意的是通讯密码即可;至于说通讯IP哪里,本机留空即可;
涉及网站数据迁移:
检查discuz!三个数据库配置文件中关于应用ID、通信密钥、域名填写,并和ucenter应用管理里面的通信信息进行比对修改。下面是discuz!X2中三个数据库配置文件的所在的目录位置:
../config/config_ucenter.php
../config/config_global.php
../uc_server/data/config.inc.php
PS: discuz!X2迁移的时候需要修改这些配置文件信息,为了避免错误,老梁建议使用文本编辑器editplus进行修改操作即可。
问题未解决?付费解决问题加Q或微信 2589053300 (即Q号又微信号)右上方扫一扫可加博主微信
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!