请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站
    城市    201X-XX-XX    星期X    ---     今日温度:-----    风力:-----    风向:-----

[网站建设] discuz3.2开启ssl实现https需要修改的地方

[复制链接]
查看105 | 回复3 | 2019-12-26 01:50:21 | 显示全部楼层 |阅读模式
discuz3.2开启ssl实现https需要修改的地方

本帖简单介绍一下DZ开启SSL,间接实现Https的方法,原创,几处引用了CSDN,感谢。

discuz X3.2在系统上是支持https的,不过需要手动修改几个地方。首先确保服务器端已开启https,且正确配置了SSL证书。

discuz X3.2开启支持https主要需要修改一下几个地方:

1、查找修改文件discuz_application.php :
source/class/discuz/discuz_application.php (约第 187 行处): 查找:
$_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;


修改为:
$_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;


2、查找修改文件avatar.php :
uc_server/avatar.php (约第 13 行处)查找

  1. define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码
修改为:
  1. define('UC_API', strtolower(($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码
3、除去非 HTTPS 内容避免提示”不安全内容“
Source/plugin/manyou/Service/DiscuzTips.php ,最后的那段 JS 加载脚本删除就行。
非楼主层如果有点评,那么点评者头像不是 HTTPS 开头,也需要修改一个文件来适配: template/default/forum/viewthread_node_body.htm (约 180 行),搜索 div class="psta vm">,将下面一行注释掉或者删除。
打开浏览器,使用开发者工具或者查看源码逐一排查加载的非 HTTPS 资源并修改。

4、后台设置的修改完善
在后台还有一些设置,可能会干扰 https 的使用。

后台 >全局 > 站点 URL ,改为 https 开头的

后台 > 站长 > UCenter 设置 > UCenter 访问地址,修改为 https 开头的

UCenter 后台 > 应用管理 > 应用的主 URL ,修改为 https 开头。
修改后可能会显示通讯失败,如果 UC 和论坛程序安装在同一机器,此失败可无视,实测可以和 UC 正常通讯不影响(测试是否正常通讯程序的 Bug ),如果 UC 和论坛程序不在一台机器上,有可能不能通讯。 另外在 后台 > 全局 > 域名设置 中的一些设置也可能使 https 失效,如果更新缓存后论坛默认连接还是 HTTP ,请删除 后台 > 全局 > 域名设置 > 应用域名 > 默认 里面的默认域名(一般去 forum.php 尾巴这里会有内容,为了 HTTPS 请删除)。

5、模板的调整
主要在模板的 foot.html 以及 header.html 等文件中,使用工具逐一排查模板文件中写死的 HTTP 链接,修改为 HTTPS 。

6、数据库的调整
在论坛这种交互社区中,经常回复发帖时会有出现主域名的链接,在没有 HTTPS 之前,链接都是 HTTP 开头,这个时候,我们需要修改数据库,运行下面的 mysql 命令更新数据库,将 HTTP 替换为 HTTPS :

进入 DZ 后台:站长 – 数据库 – 升级


需要注意的是,出于安全考虑, Discuz 后台默认情况下禁止 SQL 语句直接执行,只能使用常用 SQL 当中的内容,如果想自己随意书写 SQL 升级语句,需要将程序文件 config/config_global.php 当中的$_config[admincp][runquery] 设置修改为 1 。



到此,discuz X3.2已经开启支持https了 。


当然,你还需要申请SSL证书、在服务器端部署SSL证书,目前阿里云,百度智能云,都提供免费的SSL,大家可以前去申请。当然免费的是只支持单域名的。




最近访客

  • remda
    2019-12-26
  • 小咪
    2019-12-28
  • 喵喵
    2019-12-29




下一篇:屏幕录像BandicamPortable4.5.3.1608 便携破解版
I am hot cat, I speak of myself
版权申明:此文如未标注转载均为本站原创,自由转载请注明 本贴地址:http://remda.top/thread-8-1-1.html 上篇帖子: 二哈视频合集 下篇帖子: 二哈和大橘的幸福生活(๑‾ ꇴ ‾๑)
喵喵 | 2019-12-26 19:53:34 | 显示全部楼层
-Remda-discuz3.2开启ssl实现https需要修改的地方

支持支持


回复

使用道具 举报

小咪 | 2019-12-26 22:22:23 | 显示全部楼层
-Remda-discuz3.2开启ssl实现https需要修改的地方

来了


回复

使用道具 举报

remda#网站管理认证# Remda BBS 热了喵呗——站长 | 2019-12-28 03:31:54 | 显示全部楼层
-Remda-discuz3.2开启ssl实现https需要修改的地方

桃之夭夭,其叶蓁蓁。之子于归,宜其家人。


I am hot cat, I speak of myself
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

×本站发帖友情提示
1、注册用户在本社区发表、转载的任何作品仅代表其个人观点,不代表本社区认同其观点。
2、如果存在违反国家相关法律、法规、条例的行为,我们有权在不经作者准许的情况下删除其在本论坛所发表的文章。
3、所有网友不要盗用有明确版权要求的作品,转贴请注明来源,否则文责自负。
4、本社区保护注册用户个人资料,但是在自身原因导致个人资料泄露、丢失、被盗或篡改,本论坛概不负责,也不承担相应法律责任。