• 欢迎访问梯云博客,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站点击访问
  • 站点的评论回复邮件可能会被邮箱放入垃圾邮件中,请注意哦~
  • 梯云博客近期增设了“电影资源”板块,在视频区域下边哦~
  • 梯云音乐上线,提供一站式的音乐下载平台,点击前往梯云音乐
  • 如果百度网盘下载速度过慢,可使用该工具~Proxyee-down 百度网盘不限速
  • 本站所有发布的信息以及产品,仅供学习研究使用;除有软件所有者授权外不得非法用于商业或其他用途。
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏梯云吧!

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

小知识 做棵大树 2年前 (2017-05-11) 286次浏览 0个评论

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 文件,粘贴如下内容:

  1. User-Agent: *
  2. Disallow: /

①、Nginx 平台

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

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

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

  1. server {
  2.        server_name yusi123.com;
  3.        return 301 $scheme://yusi123.com$request_uri;
  4. }

修改为:

  1. server
  2.          {
  3.                 server_name yusi123.com;
  4.                 root  /home/wwwroot/yusi123.com;
  5.                 location / {
  6.                         rewrite (.*) http://yusi123.com$1 permanent;
  7.                         }
  8.                location ~ (robots.txt) {
  9.                         rewrite /robots.txt /wrobots.txt last;
  10.                         }
  11. }

 执行如下命令,重载 nginx 即可生效:

  1. /usr/local/nginx/sbin/nginx s reload

②、Apache 平台

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

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

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

③、虚拟主机

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

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

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

  1. RewriteEngine on
  2. RewriteCond %{HTTP_HOST} ^yusi123.com [NC]
  3. RewriteRule ^robots.txt wrobots.txt [L]
  4. #以下为已存在规则:
  5. <IfModule mod_rewrite.c>
  6. RewriteEngine on
  7. RewriteCond %{REQUEST_FILENAME} !-f
  8. RewriteCond %{REQUEST_FILENAME} !-d
  9. RewriteBase /
  10. RewriteRule . /index.php [L]
  11. </IfModule>

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

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

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

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

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

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

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

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

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

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

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

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

 

 


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


TeenShare 梯云分享 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明WordPress 绑定多个域名和禁止搜索引擎收录非主域名的方法
喜欢 (3)
[欢迎投币]
分享 (0)
关于作者:
一个整天无所事事的,有时候忽然热血的孩子
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址