1

从 Visual Studio 发布到 CloudFormation 非常棒,它使您可以将网站部署到单个服务器或负载平衡堆栈。

当您想在单个服务器上部署多个网站时,问题就会出现,因为在每个部署中,位于 c:\inetpub\wwwroot 的主 web.config 都会被修改,添加 UrlRewrite。这会将所有请求从以前部署的网站重定向到新网站。即 / --/FIRST --/SECOND

如果我在 First 上请求一个页面,它会在 /Second/First 中搜索。

应用的更改如下:

    <rewrite>
        <rules>
            <rule name="AWS_DEPLOYMENT" stopProcessing="false">
                <match url="^(https?://[^/]+/)SECOND" ignoreCase="true" negate="true" />
                <conditions>
                    <add input="{PATH_INFO}" pattern="^/SECOND" negate="true" />
                </conditions>
                <action type="Rewrite" url="{R:1}SECOND{PATH_INFO}" logRewrittenUrl="true" />
            </rule>
        </rules>
    </rewrite>

有没有办法摆脱这种行为并保持主 web.config 不变?

4

1 回答 1

1

在 AWS 论坛中,我找到了答案:不支持https://forums.aws.amazon.com/thread.jspa?messageID=309811

禁用此 URL 重写的简单附加设置就足够了,我们希望亚马逊将在未来的 .NET SDK 版本中添加它

于 2012-01-13T12:45:58.813 回答