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

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

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

761

主题

775

帖子

3万

积分

董事

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

积分
32836
发表于 19-8-26 10:29:54 | 显示全部楼层 |阅读模式      紫钻仅向指定用户开放  
目前各位站长使用最多的discuz版本应该是x3.2,部分建站较早的网站可能仍在使用X2.5的版本,还有部分追求新版的站长在使用X.3.3的版本。不过总的来说,X3.2是discuz官方发布的最后一版,也是目前为止功能最全最稳定的一个版本。
& ^5 H5 B5 Y2 |! G3 W" i8 h5 I. j% K/ u% W+ J" G$ m
discuz各个版本其实都对https有一定的支持,不过都不是很完善,不管哪个版本仍然需要通过修改disucz的源文件来实现对https的完美支持。+ p. d+ I& T: `0 S

; T; z% ]9 @9 u: c+ ?: O下面我就不同版本来给大家讲解下如何修改源文件来支持https。
. H9 _6 {9 l+ \5 C) \% ~. @: ~# _/ t( g
discuz X2.0
  V, u% K1 f; w5 g1 y- `% U' K/ o' z% V0 K1 u2 Z# f
x2.0的版本用的人不多了,但我这里还是提供一份X2.0的https改造教程:http://bbs.qiuqiufa.com/t-825.html
( E; T+ p, K! _5 n) m+ Y+ Z; q, b9 \; J# q3 H  }8 A
discuz X2.5:  W) _; R# ~9 J& j  L$ u1 w9 Y
- P- ^) k' c! i4 x/ Z
X2.5的版本比较老旧了。不过经过我的研究,已经写出了X2.5的https改造教程:http://bbs.qiuqiufa.com/t-826.html
8 W6 y! N3 E5 q
- l2 W0 y  L( Q" e; c. A9 U# `& J- ediscuz X3.0:
$ x" W4 q; L7 s5 T0 w/ X6 g. f' w3 h6 c; ~2 P* z! H% L' ?& }8 ~- y3 R
X3.0的版本比X2.5较新,可以按照X3.2的修改方式来进行discuz的https改造。
( M: O# k6 O# W% g) w: V; F7 M/ j$ |5 Z% O0 _
discuz X3.2:
+ M* Y- N4 e6 a. S$ `$ w1 U, ~1 }2 z
我的所有教程,大部分是针对X3.2进行撰写的,所以在X3.2的https改造上教程已经非常完美了。* w! Y/ `  Z: n. M( Z! p
7 F' E  J" s9 K7 d
discuz X3.2开启支持https主要需要修改一下几个地方:( T/ x/ Y+ C( `1 A" P! i. D1 y
. k1 d5 E; \( G6 H8 v( u$ t* l  w
1、查找修改文件discuz_application.php
& z! J" s5 m+ d  v7 _# R
1 S7 a% P" R# ~$ l9 s6 X0 ^2、查找修改文件avatar.php ——具体的修改教程可以看这里:http://bbs.qiuqiufa.com/t-828.htmldiscuz X3.3:
2 b3 K& t. j7 q4 M" _/ x
2 |4 s4 s# m6 J# d0 kX3.3版本是目前discuz名义上的最新版本,X3.3对比X3.2的升级主要体现在对php7.0的支持上,同时对https的支持会比X3.2要好一点。
# f" C) S+ b7 h% B) o, J5 ^
, B6 t' h2 S* S0 g, U7 n& x但是,如果我还是不建议各位站长盲目升级到X3.3,特别是已经稳定运营的站点。6 b# [- V+ |1 f4 C& x2 y5 Y+ \
: p: k6 ^3 Q* y& `# L* Q
discuz X3.3开启https的方法比较简单:( v; n- D8 t9 z# j- p5 r

& o9 W+ }  f4 `& L2 U1、查找修改文件discuz_application.php :
. M+ Y, [2 Z. E: C' b  _& e3 W6 x: F
将第187行修改为:
  1. $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
3 C/ N; }9 f' L
删除第188行,- }+ N% ?' y0 z: @
7 ], I% v. p: {8 T/ @
将第189行修改为:
  1. $_G['siteurl'] = dhtmlspecialchars('http'.($_G['isHTTPS'] ? 's' : '').'://'.$_SERVER['HTTP_HOST'].$sitepath.'/');
复制代码
或者:
9 r7 u1 b& u# v6 M0 D0 W0 {修改为:
  1. $_G['isHTTPS'] = true;
复制代码

2 x( y( R# |; y  o2、查找修改文件avatar.php 3 Y" v# C4 r. T1 B- B

9 [7 X9 X% K; f9 H( {3 S) m具体的修改教程可以看这里:http://bbs.qiuqiufa.com/t-828.html5 |  q  l( s1 D7 L; _. M

: E# {  T. P1 W/ X8 {我的考虑主要是以下几个方面:
1 Q9 X0 b3 t# J, Z7 M% ^
- O- F# q1 \+ C6 R! ~1.X3.3每个月都有迭代新版本发布,如果你是想认真做网站,特别是稳定运营的网站,不建议盲目追新版。因做网站第一要求是稳定。& K. ]; ^1 X; {- n
# `/ v  w( |/ P: H& E: {# I* y
2.X3.3的主要改进是在对php7.0的支持上。升级php版本到7.0后,确实会使网站运行加快一点,但是目前discuz应用中心现有的插件和模板能够完美兼容的少之又少。所以,盲目升级到X3.3版本如果出现插件不兼容无法使用,模板错位等bug,得不偿失啊。- s# C- y. X& y3 r' U4 z

) I$ Q- d% K, Z- K$ H
' e1 y, U- Z+ _! n5 |; c0 Sdiscuz X3.4:
4 ?9 p: Z% J: N) u8 R
! a: J, R7 f9 X) h& h, S; AX3.4对https支持比较友好了,可以先在服务器上开启https然后看支持的效果好不好,如果不好,按照3.3的教程修改即可。
2 b) {1 d$ o; d  Z8 y( R9 B: C1 z% `- L
二、开启https后的问题处理:
. A- f+ r7 E4 K& g: o) P% h  T, J9 P" v) W7 N
ucenter通信失败的问题:http://bbs.qiuqiufa.com/t-827.html
. C3 w# F4 @/ z3 F* |3 F  s1 pDiscuz两行代码支持301到HTTPS情况下的头像修改 http://bbs.qiuqiufa.com/t-829.html
; P* O4 u' t% w. K( p1 ^( F$ F5 H. A' e8 `: g: _, p4 M
应用中心无法访问的问题:http://bbs.qiuqiufa.com/t-830.html
: k2 L9 t: O: A8 u" `
/ o* {9 B) r5 Q3 F8 t7 c百度联盟广告无法展示的问题:http://bbs.qiuqiufa.com/t-831.html
6 j% g, f  W! j# L. Z/ I1 x
4 i9 i/ D5 C- ~# M2 `页面排版混乱的问题http://bbs.qiuqiufa.com/t-832.html5 S7 L# J: H9 f4 c
% J! T4 u* d9 g" I( K$ _
浏览器提示不安全的问题:http://bbs.qiuqiufa.com/t-833.html: n6 h% B6 y  b1 a& U2 ^

5 B" A! [- I4 w; u; _4 X; w7 O  V, v, a$ y3 j
补充说明:                     
3 K* \. ~. S0 n: d; Y7 }; ~6 B/ f4 ^, l  s$ R* D0 i
测试服务器环境是centos6.8+nginx+php5.6,以上教程在这个环境下测试是没有问题的。" ~. U4 w, ?7 g$ d& w% t; e. K
; C( F& b0 ?( y/ M6 c3 ^
但是在其他环境,如apache,IIS等下未经过详细测试。
; a( d6 v& j- q* @1 |1 o1 |
' U& h! u9 Q8 W如果按照以上教程修改后,发现有错误,可以先还原被修改的文件。  |/ N& \& [' T- g- r

8 S0 \9 I. u. u: \) f经过测试:在IIS7+护卫神php5.6环境下,可以不需要修改discuz_application.php文件就可以开启https。( _, v4 @9 B% k) ]8 {# c" Z

8 [3 _4 p# }0 o# X8 `3 p至于apache环境下,请各位自行测试。2 ^# w3 B! i% m! J% s2 y1 e, s9 P
网站简介

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