将IIS配置为对https请求使用不同的robot.txt

将IIS配置为对https请求使用不同的robot.txt,iis,iis-7,robots.txt,Iis,Iis 7,Robots.txt,如何在https请求中使用不同于IIS 7中用于http连接的robots.txt 谢谢。这里有一些选项,这取决于您需要如何定制。最灵活的方法是编写一个处理程序,并将其映射到机器人请求,然后在内部处理 但是,对于大多数需要,请尝试重新编写模块的URL 在我脑海中(又名prob,100%不起作用),它有点像: <rule name="https_robots"> <match url="(.*)" /> <conditions> <

如何在https请求中使用不同于IIS 7中用于http连接的robots.txt


谢谢。

这里有一些选项,这取决于您需要如何定制。最灵活的方法是编写一个处理程序,并将其映射到机器人请求,然后在内部处理

但是,对于大多数需要,请尝试重新编写模块的URL

在我脑海中(又名prob,100%不起作用),它有点像:

<rule name="https_robots">
  <match url="(.*)" />
    <conditions>
      <add input="{HTTPS}" pattern="off" ignoreCase="true" />
    </conditions>
  <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/robots-https.txt" />
</rule>

遇到了完全相同的问题:

我现在正在设置https版本,希望能够快速查看和调试它,同时阻止谷歌抓取https,但保持http“一切照旧”。下面是我在配置文件中使用的一段代码:

<rule name="https_robots"  stopProcessing="true">
  <match url="^robots\.txt$" />
    <conditions>
      <add input="{HTTPS}" pattern="^OFF$" />
    </conditions>
   <action type="Rewrite" url="robots_https.txt" />
</rule>

请注意:

基本上,我创建了一个文件“robots_https.txt”,其中包含“禁止所有人使用”指令

我用的是重写,不是重定向。我不确定蜘蛛是否会得到重定向。我真的很怀疑。有了“重写”,你就不会出错


希望有帮助

使用Url Rewrite重写到或任何您需要的内容。给你一个例子,请看Edited Answer确实使用URL Rewrite,你应该能够添加一个规则,如Taylor建议的,可以返回不同的文件(通过重定向,或者可能更容易重写到不同的文件,如robotsSSL.txt),在该文件中设置一个Disallow:,以便阻止所有操作。