1

假设我有一个名为 mydomain.com 的域。例如,我添加了一个名为 site1 的子文件夹,并且我还注册了一个同名的子域。这意味着我想将site1.mydomain.com映射到site1.mydomain.com/site1但我不想/site1出现。

这是我第一次这样做,我刚刚阅读了以下文章,它非常方便,但它仍然不适用于 url。锚点被正确重写,但 url 不起作用。 http://weblogs.asp.net/owscott/archive/2010/05/26/url-rewrite-multiple-domains-under-one-site-part-ii.aspx

这是我所拥有的

<configuration>
        <system.webServer>
                <rewrite>
                        <rules>
                                <rule name="in a subfolder" enabled="true" stopProcessing="true">
                                        <match url=".*" />
                                        <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                                                <add input="{HTTP_HOST}" pattern="^(www\.)?site1.mydomain\.com$" />
                                                <add input="{PATH_INFO}" pattern="^/site1($|/)" negate="true" />
                                        </conditions>
                                        <action type="Rewrite" url="/site1/{R:0}" />
                                </rule>
                        </rules>
                        <outboundRules>
                                <rule name="Outgoing - URL paths" enabled="true">
                                        <match filterByTags="A" pattern="^(?:site1|(.*//[_a-zA-Z0-9-\.]*)?/site1)(.*)" />
                                        <action type="Rewrite" value="{R:1}{R:2}" />
                                </rule>
                                <rule name="response_location URL">
                                        <match serverVariable="RESPONSE_LOCATION" pattern="^(?:site1.mydomain.com|(.*//[_a-zA-Z0-9-\.]*)?/site1)(.*)" />
                                        <action type="Rewrite" value="{R:1}{R:2}" />
                                </rule>
                                <rule name="response_location querystring">
                                        <match serverVariable="RESPONSE_LOCATION" pattern="(.*)%2fsite1(.*)" />
                                        <action type="Rewrite" value="{R:1}{R:2}" />
                                </rule>
                        </outboundRules>
                </rewrite>
        </system.webServer>
</configuration>

正则表达式或其他内容可能存在明显错误,但我不了解此配置的每个部分,所以这可能就是原因。如果您不能给出答案,也许您可​​以向我解释更多这是做什么的?

谢谢,

4

0 回答 0