是否可以配置 IIS 以将请求转发到另一个 Web 服务器?

是否可以配置 IIS 以将请求转发到另一个 Web 服务器?

我在一台 IIS 6 服务器上建立了几个以主机头区分的网站。

但是,我希望我的网络上的其中一个站点由 Linux/Apache 服务器提供服务。我是否需要使用 IIS 的反向代理插件,或者是否有一种简单的方法可以告诉 IIS 将所有请求传递到另一台服务器?

答案1

对于 IIS 7.5,Microsoft 为此提供了官方模块!

在网站设置中,您会看到一个“URL 重写”图标。

  • 打开它
  • 右键单击“入站规则列表”
  • 选择“添加规则”
  • 选择“反向代理”

在此对话框中,您可以输入要转发到的主机名 + 端口。添加规则后,打开编辑对话框可提供更多自定义设置。

答案2

为此,我正在使用适用于 Windows 的第三方软件 (IIS),除了 URL 重写等其他功能外,它可以很好地完成这项工作:ISAPI 重写

ISAPI Rewrite 是一个基于正则表达式的强大 URL 处理引擎。它的作用与 Apache 的 mod_Rewrite 非常相似,但专为 Microsoft 的 Internet Information Server (IIS) 设计。ISAPI Rewrite 是一个用纯 C/C++ 编写的 ISAPI 过滤器,因此速度极快。ISAPI_Rewrite 让您可以自由地超越标准 URL 方案并开发您自己的方案。

搜索“Proxying”。以下是RewriteProxy 规则的文档

还有一个非常相似的开源项目:Ionic 的 Isapi 重写过滤器

答案3

不,在 IIS 6 上不行。考虑使用 nginx/ubuntu(甚至是 Windows 上的 nginx)作为 IIS6 服务器前的反向代理。我们必须使用 IIS7.5 来实现反向代理功能

答案4

Microsoft 知识库文章应该有助于回答这个请求。

将请求重定向到另一个网站或目录的过程:

  1. 在 IIS 管理器中,展开本地计算机,右键单击要重定向的网站或目录,然后单击“属性”。

  2. 单击主目录、虚拟目录或目录选项卡。

  3. 在“此来源的内容应来自”下,单击“重定向到 URL”。

  4. 在“重定向到”框中,键入目标目录或网站的 URL。

相关内容