Перенаправить в / en для одного конкретного URL в IIS - PullRequest
1 голос
/ 25 мая 2019

У меня есть 2 URL для моего сайта

1: domain1.com 2: domain2.com

Я хочу перенаправить «domain2.com» на «domain2.com/en», и если запрашивается domain1.com, я не хочу, чтобы он был перенаправлен.

часами гуглил, но не могу найти обходной путь.

вот что я написал до сих пор и возвращает: domain2.com перенаправил вас слишком много раз.

<rule name="NAME" patternSyntax="Wildcard" stopProcessing="true">
            <match url="*" />
            <conditions logicalGrouping="MatchAny">
                        <add input="{HTTP_HOST}" pattern="*domain2.com*" />
            </conditions>
            <action type="Redirect" appendQueryString="false" url="http://domain2.com/en/{C:2}" redirectType="Permanent" />
        </rule>

1 Ответ

0 голосов
/ 28 мая 2019

Вот что я сделал, чтобы решить проблему:

         <rewrite>
            <rules>
                <clear />
                <rule name="redirect to en" patternSyntax="ECMAScript" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                        <add input="{URL}" pattern="(.*)/en/(.*)" negate="true" />
                        <add input="{URL}" pattern="(.*)/Scripts/(.*)" negate="true" />
                        <add input="{URL}" pattern="(.*)/Content/(.*)" negate="true" />
                        <add input="{URL}" pattern="(.*)/fonts/(.*)" negate="true" />
                        <add input="{HTTP_HOST}" pattern="(.*)domain1.com(.*)" negate="true" />
                    </conditions>
                    <action type="Redirect" url="/en/{R:1}" appendQueryString="false" />
                </rule>
            </rules>
        </rewrite>
...