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>
正規表現などに明らかなエラーがある可能性がありますが、この構成のすべての部分を理解しているわけではないので、それが理由である可能性があります。あなたが答えを与えることができないならば、多分あなたはこれが何をするかについて私にもっと説明することができますか?
ありがとうございました、