我有指向我的开发机器的域的通配符 A 记录( *
和 *.*
)。基本上,任何不是 www
的子域指向我的开发机器(root 除外)。
我从不希望我的开发机器被搜索引擎索引或“跟踪”。
我想做的是简单设置一个 全局 URL重写规则如下:
<rule name="Global robots.txt rewrite" stopProcessing="true">
<match url="^robots\.txt" ignoreCase="true" />
<action type="Rewrite" url="http://localhost/robots.txt" />
</rule>
上面的规则是行不通的;尽管以下重定向规则确实如此:
<rule name="GLobal robots.txt redirect" stopProcessing="true">
<match url="^robots\.txt" ignoreCase="true" />
<conditions>
<add input="{HTTP_HOST}" pattern="^localhost$" negate="true" />
</conditions>
<action type="Redirect" url="http://localhost/robots.txt" />
</rule>
.. 但我不确定 301 重定向到 robots.txt 是否真的适用于搜索引擎。
关于如何完成我正在尝试的任何想法?
最佳答案
这看起来像一个很老的帖子,但我在寻找答案时发现了这个。您可以使用如下所示的规则来实现此目的:
<rule name="Robots Disallow" stopProcessing="true">
<match url="robots.txt" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="www" negate="true" />
</conditions>
<action type="Rewrite" url="robots_disallow.txt" />
</rule>
robots_disallow.txt
文件有以下内容:User-agent: *
Disallow: /
关于iis-7 - 创建全局 IIS 7 重写规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3408315/