自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:
{% L4 r8 d. p8 e6 [3 y. `! j, X
source/class/discuz/discuz_application.php(约第187行处):
$ W8 Z0 X5 p& Q. o ]1 r B- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:
7 V9 T5 C* O: o# o! @* m' s- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
; F& N b, t: R: J. [
9 q9 K' D& ?- e( Puc_server/avatar.php (约第14行处):
- Q2 f: t, G& o8 A) V9 j8 `- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:
' z1 s+ j( E! X$ X4 w' B* Z) ~- 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'], '/'))));
复制代码
6 N0 R/ g% G9 i* l6 b
在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。
# o- u& @- @, b0 u2 x
( E) Y, i( {. O. n, A
% T- |+ j- }- s, G
4 k6 @; D/ W4 O3 v O+ \! b0 }, F- V2 E
0 y1 _7 k, i0 |1 O9 y |