自 Discuz! X3 开始,已经加入了对https的支持,如果你使用https访问论坛,论坛中的链接没有变成https,按照以下修改:
6 d, k6 l; j. K. A3 x' P$ m
: M* r! V' f) h, Lsource/class/discuz/discuz_application.php(约第187行处): 3 j% T% Y: l8 f# L! O
- $_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码 修改为:3 Z% e: X: D/ u) s
- $_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
复制代码
" j3 W$ {8 G; n2 ~) N& {* e" I- @5 @$ H9 M' i& e4 U
uc_server/avatar.php (约第14行处):$ Y" w3 m# ^8 `2 V1 ^" B
- define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))));
复制代码 修改为:+ ~1 k3 E# J, i" X4 l
- 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'], '/'))));
复制代码
* t3 e* [' @8 h
在后台还有一些设置,可能会干扰https的使用后台 > 站长 > UCenter设置 > UCenter 访问地址,修改为https开头的UCenter后台 > 应用管理 > 应用的主URL,修改为https开头另外在 后台 > 全局 > 域名设置 中的一些设置也可能使https失效,如果进行了之前的几步还是无法启用,可以暂时删除这里的设置试试。
9 e7 z) M! r9 b- B7 `/ u4 Q1 K- {9 W) v" s
2 t. k( ~, ~7 I, I9 i( Q8 z
0 |) { W2 S, g" t( n
: |* J6 d, B* `, ~, H |