自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:
- o, D r, M+ i( N- d5 E3 t2 C: k0 A& N) P& Y, z. G" _0 ~: p
source/class/discuz/discuz_application.php(约第187行处):
4 Y" o+ U! l O. c: c3 A- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:8 X# e: U; F) M! _3 ~. }
- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
( [' K. b6 a& a: L. D& C
/ o0 r9 d7 a' b( _) Puc_server/avatar.php (约第14行处):
& s+ _. k: `% w9 i( g1 S- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:
6 o, A; ?& h% e- 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'], '/'))));
复制代码
+ o7 P, k6 l5 o+ J. P: I9 P在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。" W( u7 d1 x; l
0 A+ S0 u R$ W" q* ^5 A9 \: W9 @( @% H& b/ i
4 o- y' T. b* S$ S' c
$ u, ~2 } p9 u& }0 i |