Discuz X3.* 全站开启 SSL / HTTPS 后需解决的问题(2019/10/25更新)
分类 网站技术/村民张先生 发布于 2015-12-03 07:18
二、解决QQ互联登录问题。
截至2015年12月,Discuz的QQ互联仍不支持 https 站点,我们可以进行以下操作,将QQ互联链接调整为 http:// ,QQ互联登录跳转回 http:// 后再在站点内部301到 https:// 页面。
1、考虑到防止屏蔽等因素,建议启用一个独立域名,并在论坛所在服务器新建一个该域名的站点,站点目录中使用软链接链接论坛的以下目录:api config data source static 和以下文件:admin.php api.php connect.php ,即相当于对论坛做一个镜像但仅限于QQ互联相关文件。
2、打开 source/plugin/qqconnect/connect.class.php 文件,将 40-46 行中的:
$_G['siteurl'].'
替换为:
'http://上面创建的专用网址/
3、打开 connect.php 文件,在 $discuz->init(); 后面加入:
if($_SERVER['HTTP_HOST'] != preg_replace("/http(s)?:\/\/(.*?)(\/*)$/", "\\2", $_G['setting'][siteurl])) { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.preg_replace("/(.*?)(\/*)$/", "\\1", $_G['setting'][siteurl]).$_SERVER['REQUEST_URI']); exit; }
注意:后台设置中网站URL地址一定要是你的HTTPS主网址。
欢迎谈谈你的看法(无须登录) *正文中请勿包含"http://"否则将被拦截