Javascript IIS反向代理到不同的服务器
我试图弄清楚是否有可能在IIS中执行一个反向代理,该代理实际上会到达另一个web服务器端点。我曾使用它在同一台机器上遍历端口,但从未到另一台机器。这样做的目的是,我正在编写一个Javascript应用程序,该应用程序需要连接到不同服务器上的数据,并且我得到了相同来源的错误 注意:不幸的是,将远程服务器和服务更改为接受JSONP或CORS不是一个选项 以下是使用IIS反向代理进行端口跳转的配置Javascript IIS反向代理到不同的服务器,javascript,iis,web-config,reverse-proxy,windows-server,Javascript,Iis,Web Config,Reverse Proxy,Windows Server,我试图弄清楚是否有可能在IIS中执行一个反向代理,该代理实际上会到达另一个web服务器端点。我曾使用它在同一台机器上遍历端口,但从未到另一台机器。这样做的目的是,我正在编写一个Javascript应用程序,该应用程序需要连接到不同服务器上的数据,并且我得到了相同来源的错误 注意:不幸的是,将远程服务器和服务更改为接受JSONP或CORS不是一个选项 以下是使用IIS反向代理进行端口跳转的配置 <system.webServer> <rewrite&g
<system.webServer>
<rewrite>
<rules>
<rule name="Reverse Proxy to Different Port" stopProcessing="true">
<match url="^name/(.*)" />
<action type="Rewrite" url="http://localhost:5984/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
要实现此功能,您需要在IIS服务器上安装反向代理。之后,将以下内容添加到web.config中:
<system.webServer>
<rewrite>
<rules>
<rule name="Reverse Proxy to Different Port" stopProcessing="true">
<match url="^name/(.*)" />
<action type="Rewrite" url="http://[hostname here]:[port number here]/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
这将把路径以
name/
开头的任何请求重定向到其他服务器。因此,如果您在远程服务器上搜索/foo/bar
,则需要Javascript向配置了反向代理的IIS服务器请求/name/foo/bar
。要实现此功能,您需要在IIS服务器上安装要充当反向代理的脚本。之后,将以下内容添加到web.config中:
<system.webServer>
<rewrite>
<rules>
<rule name="Reverse Proxy to Different Port" stopProcessing="true">
<match url="^name/(.*)" />
<action type="Rewrite" url="http://[hostname here]:[port number here]/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
这将把路径以
name/
开头的任何请求重定向到其他服务器。因此,如果您在远程服务器上搜索/foo/bar
,则需要Javascript向配置了反向代理的IIS服务器请求/name/foo/bar
。那么问题是什么?@StevenVondruska Well。。。我需要了解是否可以使用反向代理调用不同的服务器ip,如果可以,如何执行。您是否已在IIS中安装?那么您编写的内容应该可以工作。只需更改
,然后让您的Javascript发出HTTP GET/POST to/name/*远程服务器路径*
@StevenVondruska我正在将您的答案复制到下面的实际答案。如果你想自己回答,请告诉我,我会删除我的答案。那么问题是什么?@StevenVondruska嗯。。。我需要了解是否可以使用反向代理调用不同的服务器ip,如果可以,如何执行。您是否已在IIS中安装?那么您编写的内容应该可以工作。只需更改
,然后让您的Javascript发出HTTP GET/POST to/name/*远程服务器路径*
@StevenVondruska我正在将您的答案复制到下面的实际答案。请让我知道,如果你想回答它自己,我会删除我的答案。