虚拟主机中WordPress部署SSL注意事项

  • 酉灿
  • WordPress
  • Jul 27, 2021

当我们为WordPress系统搭建的网站布置好SSL证书之后,可能会出现网站无法正常打开的原因,这是因为页面调用的是http地址导致,只需要修改为https地址即可。

注意事项:

  1. 如果您的主题/插件使用绝对地址调用了http请求可能会导致网站打开会乱码,或不能有绿锁标识,需要联系程序提供商将所有http请求修改为https
  2. 由于程序中用于检测https的标识“$_SERVER[‘HTTPS’]”未启用,可能导致网站访问时出现循环,不能登录后台等,需要修改该检测标识

完成后登录WordPress后台 – 设置 – 常规 – 将WordPress地址(URL)/站点地址(URL) 地址修改为https格式,如下截图。

部份url地址已写入数据库通过后台方式无法更新的,可以使用phpmyadmin或其他管理工具将数据库中http替换为https(风险操作进行前请务必先对数据库进行备份)

继续修改wp-includes/load.php或wp-includes/functions.php 这个文件,搜索is_ssl找到对应的函数,将$_SERVER[‘HTTPS’]修改为$_SERVER[“HTTP_FROM_HTTPS”](修改文件前请注意备份)。

或将此函数修改为:

function is_ssl() {
    if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on'){
        return true;
    }
    elseif (isset($_SERVER["HTTP_FROM_HTTPS"])&&$_SERVER["HTTP_FROM_HTTPS"]=='on'){
        return true;
    }
    elseif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'){
        return true;
    }
    else{
        return false;
    }
}
打赏