腾讯云网站解决方案帮您轻松应对建站成本高/网络不稳等常见问题

discuz X3.2修改文件支持https的教程

5
回复
1921
查看
[复制链接]

765

主题

779

帖子

3万

积分

董事

Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72Rank: 72

积分
33025
发表于 19-8-26 10:21:44 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
discuz X3.2在系统上是支持https的,不过需要手动修改几个地方。首先确保服务器端已开启https,且正确配置了SSL证书。
, Z% J+ v: N! I+ C- W' p: Adiscuz X3.2开启支持https主要需要修改一下几个地方:' y2 k5 |7 F; r0 Y

. ]3 a) I) h/ t. e7 K( l3 `1、查找修改文件discuz_application.php :(适用于nginx+pfm环境)
$ Y; H0 @# c( _- I( F$ msource/class/discuz/discuz_application.php (约第 187 行处): 查找
: z( g# n- q( c% i
  1. $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
& @( N0 R8 {* p! j6 f2 M
修改为:
  1. $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
8 T  R' D0 x& C  u
2、查找修改文件avatar.php :
9 v! k: p: d7 q# Z$ m5 O0 t9 Tuc_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'], '/'))));
复制代码

) s+ `, f$ f# ^. k. f$ K修改为:
  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'], '/'))));
复制代码
0 J! i. m9 E- G8 l; G, m6 U
3、除去非 HTTPS 内容避免提示”不安全内容“
' o1 }/ `$ M# N3 B$ bSource/plugin/manyou/Service/DiscuzTips.php ,最后的那段 JS 加载脚本删除就行。
; z5 u0 E" L  H8 z( L8 t, x非楼主层如果有点评,那么点评者头像不是 HTTPS 开头,也需要修改一个文件来适配: template/default/forum/viewthread_node_body.htm (约 180 行),搜索 div class="psta vm">,将下面一行注释掉或者删除。
: ]; ^. A/ I# T打开浏览器,使用开发者工具或者查看源码逐一排查加载的非 HTTPS 资源并修改。5 p+ @$ D0 s! w3 y* g1 K

$ H$ C( T' e1 v2 t/ P' k; y4、后台设置的修改完善
3 g* Y! ]0 J% ?  _在后台还有一些设置,可能会干扰 https 的使用。& N8 j: j) J0 N. F

  d5 e0 n2 y+ O" _0 DUCenter 后台 > 应用管理 > 应用的主 URL ,修改为 https 开头。
4 A( S7 t/ V7 t0 D修改后可能会显示通讯失败,如果 UC 和论坛程序安装在同一机器,此失败可无视,实测可以和 UC 正常通讯不影响(测试是否正常通讯程序的 Bug ),如果 UC 和论坛程序不在一台机器上,有可能不能通讯。 另外在 后台 > 全局 > 域名设置 中的一些设置也可能使 https 失效,如果更新缓存后论坛默认连接还是 HTTP ,请删除 后台 > 全局 > 域名设置 > 应用域名 > 默认 里面的默认域名(一般去 forum.php 尾巴这里会有内容,为了 HTTPS 请删除)。' a. ^, z/ h# ?$ y3 s

5 D; _. r3 L! M  p2 a0 J' c" m5、模板的调整/ A( t9 P" m6 I: J2 a
主要在模板的 foot.html 以及 header.html 等文件中,使用工具逐一排查模板文件中写死的 HTTP 链接,修改为 HTTPS 。) M& Q6 {( X: X

) N+ _: l/ e" h" x2 v6 r$ y5 n2 C6 M( [( {. Q0 c% E. C
到此,discuz X3.2已经开启支持https了 。9 |5 i$ ?6 \* e: r2 W9 q
当然,你还需要申请SSL证书、在服务器端部署SSL证书。
" k2 ~$ v5 J0 A% q5 @0 L5 x  L/ |# k- `! m. `( r
DISCUZ开启https后ucenter通信失败解决方法
3 \0 n! f; b& ?. P' j- @8 S2 ]http://bbs.qiuqiufa.com/t-827.html

0

主题

10

帖子

4

积分

1°伸手党

Rank: 2

积分
4
发表于 19-10-2 05:26:21 | 显示全部楼层         
写的真的很不错
回复

使用道具 举报

0

主题

5

帖子

12

积分

1°伸手党

Rank: 2

积分
12
发表于 19-10-14 03:40:45 | 显示全部楼层         
有竞争才有进步嘛
回复

使用道具 举报

0

主题

10

帖子

4

积分

1°伸手党

Rank: 2

积分
4
发表于 20-4-1 22:15:10 | 显示全部楼层         
discuz X3.2修改文件支持https的教程
回复

使用道具 举报

0

主题

4

帖子

4

积分

1°伸手党

Rank: 2

积分
4
发表于 6 天前 | 显示全部楼层         
谢谢楼主,共同发展
回复

使用道具 举报

0

主题

10

帖子

4

积分

1°伸手党

Rank: 2

积分
4
发表于 3 天前 | 显示全部楼层         
我是来刷分的,嘿嘿
回复

使用道具 举报

网站简介

球球发,是一家 Discuz! 商业插件、风格模板、网站源码、 Discuz!运营维护技术等于一体的交流分享网站,全站95%的资源都是免费下载,对于资源我们是每天更新,每个亲测资源最新最全---球球发(如果我们有侵犯了您权益的资源请联系我们删除