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

discuz X2.5全站开启https教程讲解

0
回复
297
查看
[复制链接]

691

主题

705

帖子

3万

积分

董事

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

积分
31859
     紫钻仅向指定用户开放  
发表于 19-8-26 09:32:37 | 显示全部楼层 |阅读模式
一、修改discuz_application.php文件开启https访问支持
8 u$ p- v0 o! Y1 n5 q- C7 N7 B5 k找到source\class\discuz\discuz_application.php文件
+ A" y% s4 ]* k' S; x. Z2 `. j
4 J* I* R/ R7 }# a# @# ]7 @8 _0 M
" ~2 S7 u+ D2 o  e. a二、修改misc.php文件,确保UCenter通信成功
7 g4 {1 `8 h& ]7 L) T* _# ]找到uc_server\model目录下的misc.php文件,; W  ?1 o2 M: x

. A0 {1 h2 N8 x& B8 k( o- y* s4 M找到69行(如下图),插入下面代码:
  1. if(substr($url,0,5)=='https'){9 \' ?5 U+ u+ ^2 ]! m3 P
  2. $ch = curl_init($url);
    0 X1 _9 s* @- n4 M% N
  3. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    4 e4 F3 q5 O* C3 _
  4. if($post){
    + x7 R+ [" h" s, b' n
  5. curl_setopt($ch, CURLOPT_POST, 1);
    # G: i! @# M7 W6 n5 {
  6. curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    ) B) l& y$ ?: Y  U0 z
  7. }- W: X) D$ m) Z3 d4 D2 a6 [
  8. if($cookie){
    + V# a" z7 s* L/ g. m) c' {
  9. curl_setopt($ch, CURLOPT_COOKIE, $cookie);
    4 U: I; ?$ P& h. Y9 N2 ?: U) {4 Q+ X
  10. }+ ~2 R! D3 T- u7 Z/ d
  11. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    ) i6 T1 \4 Y% j+ ]9 I
  12. return curl_exec($ch);+ O( e; I! P& @
  13. }
复制代码

' g' ~2 l2 {+ l6 F三、除去非 HTTPS 内容避免提示”不安全内容“. y  @8 Z6 @  S5 }& I6 ]
api/manyou/Service/DiscuzTips.php ,最后的那段 JS 加载脚本删除就行。
+ I. F+ `( B( h6 _# ~非楼主层如果有点评,那么点评者头像不是 HTTPS 开头,也需要修改一个文件来适配: template/default/forum/viewthread_node_body.htm (约 180 行),搜索 div class="psta vm">,将下面一行注释掉或者删除。
8 Y, }0 m# ?9 x: T打开浏览器,使用开发者工具或者查看源码逐一排查加载的非 HTTPS 资源并修改。
$ @9 Q5 M& q, |9 i* g9 t
* ?) q* H, H9 Q# l1 K# B. X7 S% ^四、后台设置的修改完善* T; ~, ]- d/ e  o" U0 k5 P

. }2 F) x; y* {8 K# Y在后台还有一些设置,可能会干扰 https 的使用。4 ]* t3 X/ h' i2 @0 i% [' I
$ j, {/ S, y7 K9 l$ ^
后台 >全局 > 站点 URL ,改为 https 开头的
3 J* ?- s6 i9 s+ o( W6 |$ ]# A! m7 X3 _
后台 > 站长 > UCenter 设置 > UCenter 访问地址,修改为 https 开头的
2 e& B$ b! j* y* G
8 F) f: Q- C5 q& n* |; I# I1 iUCenter 后台 > 应用管理 > 应用的主 URL ,修改为 https 开头。+ N. {' i/ ~7 d7 i9 |: ?: O
修改后可能会显示通讯失败,如果 UC 和论坛程序安装在同一机器,此失败可无视,实测可以和 UC 正常通讯不影响(测试是否正常通讯程序的 Bug ),如果 UC 和论坛程序不在一台机器上,有可能不能通讯。 另外在 后台 > 全局 > 域名设置 中的一些设置也可能使 https 失效,如果更新缓存后论坛默认连接还是 HTTP ,请删除 后台 > 全局 > 域名设置 > 应用域名 > 默认 里面的默认域名(一般去 forum.php 尾巴这里会有内容,为了 HTTPS 请删除)。
6 s$ v2 U: Q4 X% r* b, c/ e
" _% F5 v5 D% l1 u$ i2 p. S6 w五、服务器端为网站开启https访问: N2 g5 N, d) Q* F0 W
   待加,需要的话 可以联系自己空间商客服协助
  W1 }/ L1 ^& w  K, C6 p
1 R5 N7 r$ D: \. \' g六、设置301跳转, V! Z; r0 e/ ]; e
具体教程看这里:点击查看$ ?8 R7 }' y' z- a6 {3 ^8 m( x, h" B, {
到此为止,discuz X2.5的https改造已经基本完成。( G, n3 K" n( u7 o) _5 P& ]

qiuqiufa.com

网站简介

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