IIS URL Rewrite - Перезапись вложенных папок на страницы

Все,

Я потратил почти день, пытаясь понять это. Я беспомощен после всех поисков и хочу обратиться к сообществу.

Я хочу перенаправить любой трафик на свой веб-сайт на основе следующего правила

https: // www. test.com/abc -> https://www.test.com/test1.aspx?c=abc
https://www.test.com/def -> https://www.test.com/test1.aspx?c=def

Подпапку необходимо передать как строку запроса

Я пробовал это, но похоже, что это не работает.

<rule name="Reditect1" stopProcessing="true">
                    <match url="^(.*)test.com/(.*)" />
                    <conditions>
                        <add input="{R:2}" pattern="^[a-zA-Z0-9_]*$" />
                    </conditions>
                    <action type="Redirect" url="/test.aspx?c={C:0}" appendQueryString="true" />
                </rule>

Приветствуется любая помощь

0
задан 26 January 2016 в 19:00
1 ответ

Итак, после дополнительных исследований и проб и ошибок я смог это выяснить. Вот как я его настроил сейчас.

 <rule name="Redirect1" stopProcessing="true">
        <match url="^(.*)$" />
            <conditions>
                <add input="{R:0}" pattern="^(?!\s*$).+$"/>
                <add input="{R:0}" pattern="^[a-zA-Z0-9_]*$" />
            </conditions>
        <action type="Redirect" url="/test1.aspx?client={C:0}" appendQueryString="true" />
  </rule>

ПРИМЕЧАНИЕ
Правило было настроено на уровне сайта, а не на уровне сервера в IIS. Следовательно, сопоставление с образцом игнорировало доменное имя.

^ (. *) Test.com/(.*) - попытка сопоставить test.com после действительного квалифицированного имени домена. Таким образом, www.test.com/test.com/abc будет удовлетворять условию, а не www.test.com/abc[12104ptingExplanation[12105 sizes Правило соответствует любому URL-адресу, который входит - Pattern (. *)

Первое условие гарантирует, что все, что следует за квалифицированным доменным именем, содержит хотя бы один непробельный символ.

Второе условие гарантирует, что в анализируемой части нет специальных символов. Это было моим требованием.

0
ответ дан 5 December 2019 в 10:44

Теги

Похожие вопросы