自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:
$ N# _* [+ Z" Q8 \# V0 q- [5 |9 c/ h9 T# i* y. ~3 e
source/class/discuz/discuz_application.php(约第187行处):
1 x* Z- B# B/ N; c& ], D- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:
& j6 ^3 \3 c" \7 |! J- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
6 m+ h' d+ J. c+ ^ H9 T
0 g; D3 C6 z5 a, L Quc_server/avatar.php (约第14行处):
) Y- F" w* [: k& W2 h. L! f( _- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:
' G0 Y$ o, p+ o* q- 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'], '/'))));
复制代码
5 C' a! ]' }" J% k7 G1 I3 f( w
在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。# K9 a4 `! q. p. r5 p# W7 s* M8 v
( d e, ^9 U" r5 `3 o/ k/ d: |) e" h5 @8 N" k
! h+ R7 Y+ W/ z
& V" i( A m# Z+ F2 g |