此教程仅针对以下场景进行参考,请阅读后,决定是否进行如此操作:
最近遇到一个问题,部署到自己群晖上的wordpress网站由于穿透的不稳定经常断掉。然后就想着多加一个穿透通道。但是一个子域名只能绑定一个一个解析地址。
于是就有了这么一个想法:
假定之前的域名为xxx.cn,现在再增加一个通道,让www.xxx.cn解析到增加的通道上;
新通道开启https(也适用于新通道继续是http访问),即通过https://www.xxx.cn访问,但是不强迫原来的xxx.cn自动跳转到https上访问。即可以http://xxx.cn和https://www.xxx.cn分别两个访问,不会http跳转https;
方法:
修改网站根目录wp-config.php,令网站支持多域名访问
找到/* Add any custom values between this line and the "stop editing" line. */,
若增加http多域名访问,则在此句后,添加:
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
若增加https多域名访问,则在此句后,添加:
define('WP_SITEURL', 'https://' . $_SERVER['HTTPS_HOST']);
define('WP_HOME', 'https://' . $_SERVER['HTTPS_HOST']);
若同时增加http和https多域名访问,则将上方四句同时增加,如下图:
修改wp-includes/functions.php文件,增加网站https访问
若不需要https访问,仅让网站支持多http域名访问,则无需此步。
找到: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);
}