我有以下设置: -
域名:abc.xyz.com
虚拟目录:abc.xyz.com/myapp /
我的要求是每当有人打开abc.xyz.com/myapp/时,它应该在内部指向NGINX IP,但地址栏中的URL应该是abc.xyz.com/myapp/以及应用程序中的其他链接和导航应该发生。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="ReverseProxyRuleForNginx" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{CACHE_URL}" pattern="^(http?)://" />
</conditions>
<action type="Rewrite" url="{C:1}://192.168.1.105/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
我正在点击网址:
192.168.1.105是其他系统上的nginx服务器,我可以从IIS服务器访问。
答案 0 :(得分:1)
我正在使用Helicon ISAPI_Rewrite,它允许跨ASP.NET应用程序重写,这是内置的IIS重写模块无法完成的。
(请注意,似乎I'm wrong on this)。
它们具有类似= " . $id . "
的语法,用于编写重写/代理规则,例如:
.htaccess
(这是未经测试的,只是为了提出一个想法)。
存在...
RewriteEngine on
RewriteBase /
RewriteRule ^/myapp/(.*?)$ http://localhost/myapp/ [QSA,P]
...
个参数,因为a rewrite rule cannot capture URL parameters。