WordPress绑定多个域名和禁止搜索引擎收录非主域名的方法

最近在弄一个WordPress外贸企业站,遇到了一些问题,发出来给大家参考一下。

WordPress绑定多个域名

客户网站绑定了多个域名,部分域名都直接做301重定向跳转到主域名。但是客户的主域名在做Google AdWords推广的时候被封禁了,所以要求启用其他域名绑定来做Google推广。

WordPress虽然默认只能绑定一个域名,如果想要把多个域名绑定到同一个站点而且不是以跳转的方式,这个问题不难解决,直接用代码在配置文件里添加一个域名,应该就可以。不过新版本的wordpress好像还是容易出问题,建议使用 WordPress 域名插件 Domain Theme (后台搜索即可)来实现。

WordPress绑定多个域名和禁止搜索引擎收录非主域名的方法

WordPress绑定多个域名后,一般情况下都会做301跳转,把所有域名都指向主域名,这样利于增加网站权重和收录。

例如:本站域名www.yusi123.com做了301重定向跳转到yusi123.com 。其他域名也是一样的意思。

但是如果没有做跳转,直接输入域名的时候还是可以访问网站的。

理论上,301重定向是对搜索引擎友好的设置,而且搜索引擎也能识别301返回码,从而只收录首选的主域名。

但是根据客户的要求,另外的一个做Google推广的域名却不能做301跳转,这个时候如果想要搜索引擎不认为你在作弊,最好当然是禁止搜索因为访问这个域名了。

下面介绍下方法。

WordPress禁止搜索引擎收录非主域名

在网站根目录新建wrobots.txt文件,粘贴如下内容:

User-Agent: *
Disallow: /

①、Nginx平台

编辑网站对应的nginx配置文件,比如:

vim /usr/local/nginx/conf/vhost/yusi123.com.conf

找到之前301跳转的配置,如:

server {
       server_name yusi123.com;
       return 301 $scheme://yusi123.com$request_uri;
}

修改为:

server
         {
                server_name yusi123.com;
                root  /home/wwwroot/yusi123.com;
                location / {
                        rewrite (.*) http://yusi123.com$1 permanent;
                        }
               location ~ (robots.txt) {
                        rewrite /robots.txt /wrobots.txt last;
                        }
}
 执行如下命令,重载nginx即可生效:

/usr/local/nginx/sbin/nginx -s reload

②、Apache平台

编辑 .htaccess 文件,将之前的301跳转规则替换成如下代码即可:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^yusi123.com [NC]
RewriteRule ^robots.txt wrobots.txt [L]
RewriteCond %{REQUEST_FILENAME} !robots.txt
RewriteRule ^(.*) http://yusi123.com/$1 [R=301,L]

其中第4行是关键,表示仅在请求名称非robots.txt的时候,才会执行后面的301跳转,从而避免第三条规则被覆盖!

③、虚拟主机

在已有的.htaccess文件的最前面加上如下三行代码即可:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^yusi123.com [NC]
RewriteRule ^robots.txt wrobots.txt [L]

修改后的完整的htaccess的内容如下:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^yusi123.com [NC]
RewriteRule ^robots.txt wrobots.txt [L]
#以下为已存在规则:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
RewriteRule . /index.php [L]
</IfModule>

其他虚拟主机、建站程序,可以参考这个实例来修改即可,注意避免和主机已有的301发生规则冲突即可。

最后,效果可以直接访问域名的robots.txt文件,或者使用百度站长平台的robots工具来检测。

上面的方法测试可以用,但是还有一个更简单的方法,只要在网站的head部分加入如下代码即可:

<?php
if($_SERVER['HTTP_HOST'] == '禁止收录域名1')
if($_SERVER['HTTP_HOST'] == '禁止收录域名2'){
?>
<meta name="robots" content="noindex,nofollow" />
<?php } ?>

另外补充一下相关meta robots的说明,可以自行选用:

<META NAME="ROBOTS" CONTENT="INDEX,FOLLOW" /> 可以抓取本页,而且可以顺着本页继续索引别的链接
<META NAME="ROBOTS" CONTENT="NOINDEX,FOLLOW" /> 不许抓取本页,但是可以顺着本页抓取索引别的链接
<META NAME="ROBOTS" CONTENT="INDEX,NOFOLLOW" /> 可以抓取本页,但是不许顺着本页抓取索引别的链接
<META NAME="ROBOTS" CONTENT="NOINDEX,NOFOLLOW" /> 不许抓取本页,也不许顺着本页抓取索引别的链接。
 特别说明:用这个方法需要取消301重定向功能,否则不会有meta申明的输出!

所以,将robots和META这2种方法结合一下,新站架设前可以这样设置:

无须设置301重定向,先在nginx配置文件中,将监听www.yusi123.com(非首选域名)的配置修改如下:

server
        {
              listen 80;
              server_name yusi123.com;
              index index.html index.htm index.php default.html default.htm default.php;
              root  /home/wwwroot/yusi123.com;
              #以下是robots的重写规则
              location ~ (robots.txt) {
                         rewrite /robots.txt /wrobots.txt last;
                        }
               #以下其他需要的规则,和首选域名保持一致
               *******
        }

然后,在header.php里面新增如下代码:

<?php if($_SERVER['HTTP_HOST'] == 'www.yusi123.com') { ?>
<meta name="robots" content="noindex,nofollow" />
<?php } ?>

如此,就做好了WordPress绑定多个域名和禁止搜索引擎收录非主域名的方法的设置!

未经允许不得转载:欲思博客 » WordPress绑定多个域名和禁止搜索引擎收录非主域名的方法
喜欢(2) 打赏

评论38

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #38
    技术博客,很牛逼啊,,,,,以后常过来看下。。。。。。。。。。
    麦钧德翡翠2018-01-26 10:16:11回复
  2. #37
    博主的前端不错,这个网站就是用的博主的前端插件
    2017-12-26 9:27:59回复
  3. #36
    这个都能实现,厉害
    楚狂人2017-12-07 22:22:48回复
  4. #35
    感谢分享,一如既往的有干货
    楚狂人博客2017-10-20 15:18:03回复
  5. #34
    感觉还是这个程序最好用
    宝宝计划客户端2017-05-19 0:31:16回复
  6. #33
    感谢博主分享
    鸭梨2017-05-13 23:06:33回复
  7. #32
    最好用的主题 没有之一
    福利联盟2017-05-06 17:38:45回复
  8. #31
    很荣幸来访您的博客,留言只是证明我来过!
    衣皇后2017-04-13 15:06:33回复
1 2 3

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

在线客服

在线客服

  • 扫描二维码,微信联系 扫描二维码,微信联系