搜索引擎通过不同域名响应不同robots.txt文件的设置(Nginx)
2013-12-16 17:00:57 来源: 浏览: 次
1.修改主配置文件
添加行或取消行注释,防止规则文件被访问:
location ~ /\.ht {
deny all;
}
添加包含规则的文件:
include /path/to/host/dir/.htaccess
2.添加规则文件
新建规则文件/path/to/host/dir/.htaccess,并写入:
set $robotsrewrite 'no';
if ($http_host ~* "^zbsd.cn$") {
set $robotsrewrite 'yes';
}
if ($http_host ~* "^www.zbsd.cn$") {
set $robotsrewrite 'yes';
}
if ($robotsrewrite = "yes") {
rewrite ^/robots.txt$ /robots_forbidden.txt last;
}
3.修改robots文件
/path/to/host/dir/下应有两个robots文件,robots.txt和robots_forbidden.txt。
前者为正常访问的robots文件,内容不变。
后者为禁止访问的robots文件,命名为robots_forbidden.txt,并写入如下内容:
User-agent: *
Disallow: /
4.重启Nginx
重启Nginx以使规则生效。
5.验证设置
http://www.zbsd.com/robots.txt(正常访问的robots.txt)
http://www.zbsd.cn/robots.txt(禁止访问的robots.txt)
注意:使用.htaccess文件为了遵循Apache的习惯,Nginx实际上是作为一个配置包含文件载入.htaccess文件的,
因此需要重启Nginx,而不是像Apache那样实时读取的。