IIS 7 重写到不同的应用程序池

Jam*_*kes 6 iis-7 url-rewriting application-pool

有很多关于该主题的主题说您无法将传入请求重写到 IIS 7 中的不同应用程序池(其中一篇文章是https://serverfault.com/questions/220007/iis-7-5-multiple- application-pools-and-url-rewriting-403-18-forbidden)。重定向可以工作,但该项目的要求是我们不能允许用户查看或搜索引擎对重定向的 URL 建立索引。

所以问题是:本地服务器上是否有任何其他机制允许您在 IIS 有机会开始处理请求之前拦截请求?有点像旧的 ISAPI 过滤器的用途。许多文章建议使用某种形式的 Http 代理或软件负载均衡器;这两个选项都是有效的,但可能会导致物理和虚拟资源的一些开销。回顾一下,主要目标是我们尝试将来自 www.domain.com/(.*) 的请求重写为 www.domain.com/{currentversion}/{R:1},其中根 Web站点和版本化 Web 应用程序彼此隔离。

Gre*_*reg 0

我可能误解了你的意思;但您本质上想要一个反向代理?一种重写URL以避免搜索的方法;客户端生成页面资源,就好像它来自服务器一样。可以从IIS Rewrite Module.

尽管如此,您也许可以创建两个完全独立的站点示例:

  • http://www.foo.com
  • http://www.foo.com/en
  • https://www.foo.com/en<-- 输入就好像您正在过渡到https.

这样,它们<sites>就指向一个单独的目录,然后都作为单独的实体进行处理,这样您就可以在该页面上创建阻止的响应,这样就不会在搜索引擎中找到它

如果我的答案是关闭的;让我知道,我会删除它。但我认为这应该有效;无论如何理论上。Squid 和 Varnish 也是用于创建反向代理的应用程序