wordpress添加https

问题

docker跑的wordpress需要用nginx代理出来,以http协议将wordpress代理出来没有问题,以https协议将wordpress代理出来出现问题。
代理出来的wordpress中混杂了http,导致无法访问。
浏览器存在安全机制,当https网站去加载http资源时,默认会拒绝http资源

解决

修改配置文件 wp-includes/functions.php

## require ABSPATH . WPINC . '/option.php';
## 下添加如下
add_filter('script_loader_src', 'agnostic_script_loader_src', 20,2);function agnostic_script_loader_src($src, $handle) { return preg_replace('/^(http|https):/', '', $src); }
add_filter('style_loader_src', 'agnostic_style_loader_src', 20,2);function agnostic_style_loader_src($src, $handle) { return preg_replace('/^(http|https):/', '', $src); }

修改配置文件 wp-config.php

## 添加如下代码
$_SERVER['HTTPS'] = 'on';
上一篇:2021-06-17


下一篇:WordPress安全篇(1):WordPress网站启用HTTPS详细教程