我在由Host Header区分的一台IIS 6服务器上建立了多个网站。我是否需要为IIS使用反向代理加载项,还是有一种简单的方法告诉IIS将所有请求传递给另一台服务器?

#1 楼

对于IIS 7.5,Microsoft为此提供了正式模块!


URL重写:http://www.iis.net/download/URLRewrite

反向代理: http://www.iis.net/download/ApplicationRequestRouting


在网站设置中,您将获得“ URL Rewrite”图标。


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

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

评论


很好,一切都是这样,但是最初的问题指定了IIS 6,所以我很困惑,特定于IIS 7.5的答案已标记为“已接受”。 IIS 6是否有解决方案?

–提姆·朗
2010-12-12在0:54

@Tim:您可以使用下面提到的ISAPI重写,但是除此之外,我对IIS6解决方案并不熟悉。

–vdboor
2010-12-14 12:28

我在Win10机器上遇到麻烦,无法安装。这些模块有任何限制吗?是否有必要在MS的服务器操作系统上运行它?谢谢

–fpdragon
16年12月19日在21:11

建议使用此方法反向代理POST请求存在问题

– Casper Leon Nielsen
17年5月4日在11:17

@CasperLeonNielsen您能否向我们指出有关潜在POST问题的更多详细信息?

–詹斯·埃里希(Jens Ehrich)
17年8月11日在18:19

#2 楼

我为此使用的是用于Windows(IIS)的第三方软件,除了URL重写之类的其他功能外,它还可以很好地完成此工作:ISAPI重写。


ISAPI重写是基于正则表达式的功能强大的URL
操作引擎。它的行为与
Apache的mod_Rewrite相似,但专门为Microsoft的Internet
Information Server(IIS)设计。
ISAPI Rewrite是用纯C语言编写的ISAPI过滤器/ C ++,因此它非常快。 ISAPI_Rewrite赋予您
超越标准URL方案的自由,并开发您自己的自己的方案。


搜索“代理”。这是RewriteProxy规则的文档。

还有一个非常相似的开源项目:Ionic的Isapi Rewrite Filter。

评论


链接到IIRF ProxyPass的文档:cheeso.members.winisp.net/Iirf20Help/html/…

– Cheeso
09年12月2日在20:31

+1-在IIS 6上效果很好。

–埃文·安德森(Evan Anderson)
2012年5月10日下午1:58

由于以下问题,我无法在Windows 2008 R2 SP1上使用IIRF:iirf.codeplex.com/workitem/32479

– Peter K.
13年1月8日在4:15

#3 楼

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

#4 楼

此Microsoft KB文章应有助于回答此请求。

将请求重定向到另一个网站或目录的过程:在IIS管理器中,展开本地计算机,右键单击要重定向的网站或目录,然后单击“属性”。
单击“主目录”,“虚拟目录”或“目录”选项卡。
在此源的内容应来自以下位置,单击“重定向”。到URL。
在“重定向到”框中,键入目标目录或网站的URL。


评论


考虑到发布者问题上的“ reverse-proxy”标签,我猜他在寻找反向代理功能而不是HTTP重定向。

–埃文·安德森(Evan Anderson)
09年7月29日在13:24

另一台服务器未公开可用,因此很遗憾,该服务器无法正常工作

–丹尼尔·奥(Daniel O)
09年7月29日在13:36

这是完全错误的。

– Tacos_tacos_tacos
15年7月1日在11:35