Discuz! X3.4 如何配置https
TIME 2019-04-02
刚安装好的Discuz! X3.4程序,地址栏里面还是http
首先进入后台【全局】【站点信息】【网站URL】
里面域名前面的设置为http修改成https
保存后,刷新页面
这时后台域名前已经变成了https,https前面还有一个锁,这就是说明已经配置好了SSL安全加密
可前台则不然
虽然域名前面已经有https字样了,但是前面却还有个感叹号
这时首先要排除页面中还有没残余的http连接没有去掉
据说修改三个文件就能搞定
第一个就是位于source/class/discuz/下的discuz_application.php这个文件
找到在第190行的,这段代码
$_G[‘isHTTPS’] = ($_SERVER[‘HTTPS’] && strtolower($_SERVER[‘HTTPS’]) != ‘off’) ? true : false;
修改成
$_G[‘isHTTPS’] = ($_SERVER[‘SERVER_PORT’] == 443 || $_SERVER[‘HTTPS’] && strtolower($_SERVER[‘HTTPS’]) != ‘off’) ? true : false;
保存替换原来的文件
然后找到 /uc_server/avatar.php里面的第14行
define(‘UC_API’, strtolower(($_SERVER[‘HTTPS’] == ‘on’ ? ‘https’ : ‘http’).’://’.$_SERVER[‘HTTP_HOST’].substr($_SERVER[‘PHP_SELF’], 0, strrpos($_SERVER[‘PHP_SELF’], ‘/’))));
修改为
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’], ‘/’))));
保存替换原来的文件
找到 uc_server/admin.php 第21行处
define(‘UC_API’, strtolower((isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] == ‘on’ ? ‘https’ : ‘http’).’://’.$_SERVER[‘HTTP_HOST’].substr($_SERVER[‘PHP_SELF’], 0, strrpos($_SERVER[‘PHP_SELF’], ‘/’))));
替换为
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’], ‘/’))));
保存替换原来的文件
然后
后台 【站长】 》【 UCenter 设置】 【 UCenter 访问地址】将http修改为https
修改后保存
保存修改时,如果遇到 配置文件写入失败,请检查设置
则需要将config目录和以下文件赋予可写可修改权限
运行以下命令
chown -R 777 /home/wwwroot/网站根目录/config
如果修改后刷新又变回http
最简单的方法就是直接修改/config/config_ucenter.php文件
找到第16行的 http为https
保存替换该文件
最后,在后台找到
【UCenter 后台】 【 应用管理】【应用的主 URL】改为https
然后【工具】【更新缓存】刷新后台缓存
这时首页的https和锁形的加密标识图标就被点亮了
OVER…
点击数:116