Redirect IIS 10重写为http和https的内部端口
我在Windows服务器的端口Redirect IIS 10重写为http和https的内部端口,redirect,iis,https,url-rewriting,reverse-proxy,Redirect,Iis,Https,Url Rewriting,Reverse Proxy,我在Windows服务器的端口8080上运行了一个node js应用程序,可以通过http://localhost:8080。我想使用一些子域,如app.mydomain.com,而不使用服务器外部的端口号来打开这个node.js应用程序。我想完全将所有流量重写到此端口,并且没有子目录的过滤器 我已经在我的IIS上安装了ARRv3_0和urlrewrite2,并且也重新启动了服务器。还在服务器上安装了证书并分配给此IIS网站。目前,我将此文件用作我的web.config: <?xml ve
8080
上运行了一个node js应用程序,可以通过http://localhost:8080
。我想使用一些子域,如app.mydomain.com
,而不使用服务器外部的端口号来打开这个node.js应用程序。我想完全将所有流量重写到此端口,并且没有子目录的过滤器
我已经在我的IIS上安装了ARRv3_0
和urlrewrite2
,并且也重新启动了服务器。还在服务器上安装了证书并分配给此IIS网站。目前,我将此文件用作我的web.config
:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Reverse Proxy to node server" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost:8080/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
当我同时使用http
和https
打开域时,我得到了404
您需要注意以下几点
您需要在ARR.ARR->Server proxy Settings->Enable proxy中检查启用代理。
根据代理规则,当您从一个URL代理到另一个URL时,只会重写域,因此您必须确保URL中包含页面信息,例如http://initialURL/index.html,这将是对的最后一次重写http://localhost:8080/index.html. 如果不想添加index.html,可以启用默认文档并将index.html移动到第一个文档。
错了,谢谢。1号已经解决了我的问题。任何人都有这个问题:你应该首先安装ARR。然后从IIS左侧边栏中选择服务器名称,并打开应用程序请求路由缓存
。如上面的屏幕截图所示,只需启用第一个复选框。