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

[知识库]discuz X2.0、2.5、3.0、3.2、3.3、3.4全站https教程

1
回复
1241
查看
[复制链接]

763

主题

777

帖子

3万

积分

董事

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

积分
32946
发表于 19-8-26 10:29:54 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
目前各位站长使用最多的discuz版本应该是x3.2,部分建站较早的网站可能仍在使用X2.5的版本,还有部分追求新版的站长在使用X.3.3的版本。不过总的来说,X3.2是discuz官方发布的最后一版,也是目前为止功能最全最稳定的一个版本。
. c3 D" q4 W9 I
7 o% u/ E$ O7 b' J, \9 I( D+ p4 {discuz各个版本其实都对https有一定的支持,不过都不是很完善,不管哪个版本仍然需要通过修改disucz的源文件来实现对https的完美支持。$ Z) N0 y& R% s. i+ X7 O
- |  T6 T  V/ P/ a6 V% H
下面我就不同版本来给大家讲解下如何修改源文件来支持https。) E2 h4 h3 t1 Z5 A) f3 g! t

* Q5 _2 S, H  V0 y4 a. Y/ idiscuz X2.0% J  r# t& W) C

) j2 V. P$ W3 `: ~2 ~3 J" Ex2.0的版本用的人不多了,但我这里还是提供一份X2.0的https改造教程:http://bbs.qiuqiufa.com/t-825.html. b: ^) ?/ F. @7 P* c& A9 w7 `# o

3 u/ `+ S: h. N  x. I3 Cdiscuz X2.5:5 `! B; u3 y1 w! A5 o: u

* \/ c- _! A$ E' H! F/ H' @X2.5的版本比较老旧了。不过经过我的研究,已经写出了X2.5的https改造教程:http://bbs.qiuqiufa.com/t-826.html$ l/ K2 \! B" A  P: ]  U& m4 q

# O$ N) D9 y4 A+ c* k0 F9 x8 [5 vdiscuz X3.0:1 ~: E0 \  y. \  @
) N$ s5 I! S$ k2 x" [
X3.0的版本比X2.5较新,可以按照X3.2的修改方式来进行discuz的https改造。
# F4 P0 \; S% W! d8 K
1 U( I5 g; I3 cdiscuz X3.2:
; w8 Z, s5 T3 s+ I9 U* t9 v! b1 l8 t
我的所有教程,大部分是针对X3.2进行撰写的,所以在X3.2的https改造上教程已经非常完美了。4 Q* i  v- _0 [. O, G: p1 U

4 r. A8 @& U$ c, Z2 ?discuz X3.2开启支持https主要需要修改一下几个地方:/ T2 U+ D) {/ n0 J7 M. ]$ q0 u0 }; W: c
1 K4 ~; I: G  c. h. A
1、查找修改文件discuz_application.php 0 B2 J" E! X8 O8 u5 W3 w: R

% ^+ g6 ?4 w7 r: X* U7 l2、查找修改文件avatar.php ——具体的修改教程可以看这里:http://bbs.qiuqiufa.com/t-828.htmldiscuz X3.3:" V/ e% ~7 `1 E8 }$ W& W

8 k8 T1 C: L" H( g) f2 i- i$ |9 o% OX3.3版本是目前discuz名义上的最新版本,X3.3对比X3.2的升级主要体现在对php7.0的支持上,同时对https的支持会比X3.2要好一点。9 J7 G) g0 \/ G* K9 [  O3 |
$ k2 o3 s  ~$ `0 E# n5 j& p
但是,如果我还是不建议各位站长盲目升级到X3.3,特别是已经稳定运营的站点。
; z2 |( b3 n, }. j% A# P- ~# _4 ~8 [
discuz X3.3开启https的方法比较简单:
& Z9 i2 f% ?3 ^" k
$ D4 ~, Y6 K/ T: J1 E% Z1、查找修改文件discuz_application.php :2 s7 {  S+ n& J2 T8 V

% o- u- J" U. f5 x" ]9 x! K) k1 |/ V将第187行修改为:
  1. $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码

& O& M# o* Y% M% f7 P删除第188行,8 S0 T! r6 a! a! z: r

/ F# J9 ^' p- m  Z" q2 d将第189行修改为:
  1. $_G['siteurl'] = dhtmlspecialchars('http'.($_G['isHTTPS'] ? 's' : '').'://'.$_SERVER['HTTP_HOST'].$sitepath.'/');
复制代码
或者:
6 [% k9 I  `/ h修改为:
  1. $_G['isHTTPS'] = true;
复制代码
+ {2 C  q% ]' m" D% m8 q4 F
2、查找修改文件avatar.php
/ P+ e: G: A/ I1 \! h$ n& n
  w  X! c, r5 P+ G! E4 V- ]4 x; v. y具体的修改教程可以看这里:http://bbs.qiuqiufa.com/t-828.html
/ R% q7 I0 u8 ~2 s1 e2 N, `- M4 w5 D0 k& _3 d! L
我的考虑主要是以下几个方面:4 ^; J" w* j+ o+ b, v0 [9 V

1 \0 \0 W6 F- h5 S0 u/ n1 P1.X3.3每个月都有迭代新版本发布,如果你是想认真做网站,特别是稳定运营的网站,不建议盲目追新版。因做网站第一要求是稳定。  H! w0 T. }) Q. P; t

1 o; U# k6 e* H% o7 v) h3 v2.X3.3的主要改进是在对php7.0的支持上。升级php版本到7.0后,确实会使网站运行加快一点,但是目前discuz应用中心现有的插件和模板能够完美兼容的少之又少。所以,盲目升级到X3.3版本如果出现插件不兼容无法使用,模板错位等bug,得不偿失啊。
) M. D8 Q9 T5 E6 U# N# X) B
4 y+ R% v( b1 [8 n1 Y
3 B) J3 A, E, Gdiscuz X3.4:
( V9 s. I5 n  b" O1 v, {
0 X' l" r$ F; l* kX3.4对https支持比较友好了,可以先在服务器上开启https然后看支持的效果好不好,如果不好,按照3.3的教程修改即可。( e( F- k+ q/ a6 O

7 A8 {7 @) }1 _( c5 }- J二、开启https后的问题处理:
& ^& A% _3 g1 ]' a- f7 C7 @8 _
% b: _4 o% M/ F3 |) Uucenter通信失败的问题:http://bbs.qiuqiufa.com/t-827.html6 _) K. E# S7 ?* o; T; C
Discuz两行代码支持301到HTTPS情况下的头像修改 http://bbs.qiuqiufa.com/t-829.html
. z  w- T% y" i* _; ^7 H1 ?
! o! t9 Z6 m6 W3 L' |) q" f应用中心无法访问的问题:http://bbs.qiuqiufa.com/t-830.html8 Q; [* {4 r" J

" v. h9 l% C( m/ a' l百度联盟广告无法展示的问题:http://bbs.qiuqiufa.com/t-831.html
7 P7 [& L. f, j1 w1 {% c7 \2 s# [- `8 d* W) C. y# O0 p0 w
页面排版混乱的问题http://bbs.qiuqiufa.com/t-832.html
, {5 {; Y8 c& \- M/ I
1 }' u& r$ d/ x! a% z浏览器提示不安全的问题:http://bbs.qiuqiufa.com/t-833.html8 `- W; X) d$ c8 C* P3 S( ?
7 ~. T( b+ m) N& ^* ^
( d3 M6 S" |$ D& t  }; y! j+ E
补充说明:                     
4 b& |( p" o# C( K% v. Z/ @! P- z2 M, G
测试服务器环境是centos6.8+nginx+php5.6,以上教程在这个环境下测试是没有问题的。9 Y7 _+ e* j- B2 Q! y  b, s

1 f6 u) k% M, [2 E0 l" i/ H9 o但是在其他环境,如apache,IIS等下未经过详细测试。
2 a8 @, K/ w1 e- K& S
" k- A  e3 S5 E如果按照以上教程修改后,发现有错误,可以先还原被修改的文件。) Y9 c/ l$ N0 N) ~( q% Z6 V
# i/ }, ?( q1 s1 a+ C2 L0 l
经过测试:在IIS7+护卫神php5.6环境下,可以不需要修改discuz_application.php文件就可以开启https。! x" D0 r1 w, R9 ]+ [  ~

" |- Q: n! h4 Z- U1 k至于apache环境下,请各位自行测试。/ f0 E' g6 }% z

1

主题

9

帖子

25

积分

1°伸手党

Rank: 2

积分
25
发表于 19-12-1 05:58:48 | 显示全部楼层         
来过
回复

使用道具 举报

网站简介

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