Назад | Перейти на главную страницу

Перезапись URL-адреса IIS 7: не работает с обратной ссылкой C: 1 для URL-адреса перенаправления

Я использую IIS7 с модулем перезаписи URL, и я не могу заставить его работать должным образом. Правило выглядит так в web.config

    <rewrite>
        <rules>
            <rule name="Redirect to new enviroment" stopProcessing="true">
                <match url="default.aspx" />
                <action type="Redirect" url="http://www.example.se/play?id={C1}" appendQueryString="false" redirectType="Permanent" />
                <conditions logicalGrouping="MatchAny" trackAllCaptures="false">
                    <add input="{QUERY_STRING}" pattern=".*id=(.*)&amp;.*" />
                </conditions>
                <serverVariables>
                </serverVariables>
            </rule>
        </rules>
    </rewrite>

и вводимый URL http://www.example2.se/player/default.aspx?id=37185&metadatalanguageId=1

В результате я перенаправлен на http://www.example.se/play?id=

Таким образом, идентификатор (37185) отсутствует в результате. Когда я использую тестовый шаблон в диспетчере IIS, он выглядит нормально и говорит, что обратная ссылка {C: 1} должна содержать идентификатор. Что мне не хватает ??? Я пробовал использовать «Правила отслеживания невыполненных запросов», но все выглядит так, как будто должно работать.

Похоже, ваше правило использует {C1}, но оно должно включать двоеточие, например {C: 1}