自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:
! E4 O: Z8 W( i. a6 X0 S% y* l: H. t6 W6 R
source/class/discuz/discuz_application.php(约第187行处):
r4 h7 M5 N+ e' {+ b- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:% e4 ?) N3 g Z3 |+ J" [) A
- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
% _( S6 ?! l2 x2 @- H, y3 I, M. D1 y1 h# ]2 S4 j; H, v
uc_server/avatar.php (约第14行处): O- F" @+ Y0 m* Z% c0 ~& A3 i4 {$ @
- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:
5 d3 W! K s2 r. W- 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'], '/'))));
复制代码
# ]( o1 V9 r. s/ l+ B$ t
在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。
! G) K( t1 m: u3 }2 ~$ u: T; N$ ^$ a& ^9 y, y) s3 e! ]/ o
# A2 d; L2 A, \* z4 Y4 {; A! H* F# u4 R" b* t7 z
- ^) v8 g1 O; \& O6 h |