自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:1 G- q3 v$ p% g$ z' B
+ n4 o$ C' p; B4 h" m) ]9 u* x
source/class/discuz/discuz_application.php(约第187行处): ! }: r2 x) C+ k+ r% K
- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:! q' H; |# g; N% t' T% s
- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
; b! r( p0 a7 f
( ^9 @# W. U7 Z, fuc_server/avatar.php (约第14行处):
4 ^0 t$ q* b2 p- n4 x% k- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:
# J5 d5 E3 ^3 h3 L8 c; N- 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'], '/'))));
复制代码
( E" V5 M8 d7 z' l+ C9 Q在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。
C" G8 [' I2 Y- @+ \
X- H4 o- u( ]0 t8 ]8 S) _# _( E B2 P
M* E* ]8 _0 C8 R; l
. \% t; m/ E: h/ s9 h9 u2 M1 y3 @ |