2

我安装了 ARR 版本 2 并启用了代理设置(64 位版本)。我创建了一个重写规则,如下所示。只有满足特定条件才会重写。它是一个 ASP.NET MVC 应用程序。(当前和重写的应用程序)

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true"> 
    </modules> 
    <rewrite>
        <rules>
            <rule name="Rule1" stopProcessing="true">
                <match url="(.*)" />
                <conditions logicalGrouping="MatchAny">
                    <add input="{QUERY_STRING}" pattern="input=2" />
                </conditions>
                <action type="Rewrite" url="SomeOtherDomainURL/{R:1}" logRewrittenUrl="true" />
            </rule> 
        </rules>
    </rewrite>
</system.webServer>

使用上述配置重写不起作用。
当我设置它时runAllManagedModulesForAllRequests = "false",它可以工作,但当前的 ASP.NET MVC 应用程序不工作,它需要托管处理程序才能运行。

当我设置runAllManagedModulesForAllRequests = "true"时,重写根本不起作用,但当前的 ASP.NET MVC 应用程序可以工作。

如何仅通过 web.config 更改来实现两者?

4

0 回答 0