Как перенаправить определенный URL с определенными переменными в iis

Кажется, нет никакой проблемы с сервером. Очевидно, администраторы сервера абсолютно безумны, но я полагаю что премия!:) Я - теперь большой поклонник gordo.foofus.net-attacks.mp3

2
задан 6 May 2012 в 16:14
1 ответ

Попробуйте это:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="MyRule" patternSyntax="ECMAScript" stopProcessing="true">
          <match url="^folder/Default.aspx$" />
          <action 
              type="Redirect" 
              url="folder/Default.aspx?&amp;variable1=ffff&amp;variable2=gggg" 
              appendQueryString="false" 
              redirectType="Found" /> 

          <conditions logicalGrouping="MatchAny">
            <add input="{QUERY_STRING}" 
                 pattern="^&amp;variable1=eeee&amp;variable2=aaa$" />

            <add input="{QUERY_STRING}" 
                 pattern="^variable1=eeee&amp;variable2=aaa$" />
          </conditions>
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Набор эти redirectType атрибут в <action> элемент к одному из:

  • Permanent для 301 Permanent перенаправление
  • Found для 302 Found перенаправление

Это покрывает возможность строки запроса того, чтобы быть:

&variable1=eeee&variable2=aaa - согласно Вашему примеру, с ведущим амперсандом

или с ведущим амперсандом:

variable1=eeee&variable2=aaa

, Если Вы просто хотите прямое, переписывают, не делая перенаправления, затем изменяются <action> элемент к:

<action type="Rewrite" 
        url="folder/Default.aspx?&amp;variable1=ffff&amp;variable2=gggg" 
        appendQueryString="false" />
2
ответ дан 21 November 2019 в 23:02

Теги

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