自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:
; b% k3 g/ O6 n2 j
+ C; H9 w/ [" ]5 asource/class/discuz/discuz_application.php(约第187行处): 0 V% q: F9 F# i& e& t
- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:
- N0 {4 `4 v9 g/ M- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
( ^) q4 f( A( H9 W# W
D8 b/ t. V: t/ t$ b4 A4 ]uc_server/avatar.php (约第14行处):
3 R3 g! [, r8 V0 X. q9 z( G- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:
2 z- s1 a; U- n0 i5 U- 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'], '/'))));
复制代码
; v$ Q1 J6 |) f: J在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。& S( t% f/ o# f# g% y1 Z1 G2 T
. x- g8 t. ]# c
& Y) c& {7 c8 o# A
6 q, a X' j. C! l7 l0 f/ }
8 C2 H( M, u5 c3 T! ^ |