WordPress双域名并自动匹配HTTPS和HTTP

2019年11月26日

我有一个博客是用双域名的,www.mybabya.com 和 jiayu.mybabya.com,并且都开启了https和http,也就是说同时开了80端口和443端口,在日常的使用中非常不方便,例如我在用 https://www.mybabya.com 打开博客的时候,只有首页是显示 https://www.mybabya.com 文章链接还是显示 https://jiayu.mybabya.com 因为我后台设置的站点是 https://jiayu.mybabya.com

我在网上看到有教程说修改 wp-config.php 可以实现多域名,以下代码就是修改Wordpress多域名访问的。把以下代码添加到含有wp-settings.php的这行的上边。

$youhome = 'https://'.$_SERVER['HTTP_HOST'];
$youurl = 'https://'.$_SERVER['HTTP_HOST'];
define('WP_HOME', $youhome);
define('WP_SITEURL', $youurl);

 
但是我需要的还有识别https的功能的呀,总不能复制两段代码在配置文件里。不过还好,我想到了判断域名关键词,这里我们需要用到 $_SERVER[“SERVER_PORT”] 这个PHP 常量,它是显示当前地址的端口。443即https,80即http,把上边的代码换成下边的就可以同时实现多域名和https与http了。

/** 这是判断https还是http,并且根据当前域名来设置来路,例如www或jiayu */
if($_SERVER["SERVER_PORT"] == "443")
{
$youhome = 'https://'.$_SERVER['HTTP_HOST'];
$youurl = 'https://'.$_SERVER['HTTP_HOST'];
}
else
{
$youhome = 'https://'.$_SERVER['HTTP_HOST'];
$youurl = 'https://'.$_SERVER['HTTP_HOST'];
}
define('WP_HOME', $youhome);
define('WP_SITEURL', $youurl);

 


sicnature ---------------------------------------------------------------------
Your current IP address is: 44.192.65.228
Your IP address location: 美国弗吉尼亚阿什本 亚马逊云
Your IP address country and region: 美国 美国
Your current browser is:
Your current system is:
Original content, please indicate the source:
同福客栈论坛 | 蟒蛇科普海南乡情论坛 | JiaYu Blog
sicnature ---------------------------------------------------------------------
Welcome to reprint. Please indicate the source https://www.myzhenai.com.cn/post/2999.html

2条评论

  • 阿里舞台素材网 2022年01月22日在8:58 下午

    请问这样配置多域名访问,是不是需要vps才能设置呢?应该虚拟主机并不支持吧?因为https证书好像并不好配置。

    • 海南胡说 2022年01月23日在12:16 上午

      是的,因为要上传ssl证书到指定的目录下,并且还要修改配置文件中的ssl证书路径。具体的可以咨询你的服务提供商。

发表评论

您的电子邮箱地址不会被公开。