Como redirecionar um URL específico com variáveis específicas em iis

2

A idéia é adicionar uma regra ao meu iis (versão 7) para redirecionar isso

http://www.mydomain.com/folder/Default.aspx?&variable1=eeee&variable2=aaa

para:

http://www.mydomain.com/folder/Default.aspx?&variable1=ffff&variable2=gggg

Mas tem que ser apenas com este URL específico e todos os URLs devem manter a mesma coisa

Eu li este artigo link mas é para padrões e todos os URLs e este é um URL específico

Obrigado!

    
por Saikios 07.05.2012 / 02:14

1 resposta

1

Tente isto:

<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>

Defina o atributo redirectType no elemento <action> como um dos seguintes:

  • Permanent para um 301 Permanent de redirecionamento
  • Found para um 302 Found de redirecionamento

Isso cobre a possibilidade de a string de consulta ser:

&variable1=eeee&variable2=aaa - de acordo com o seu exemplo, com um principal e comercial

ou com o principal "e" comercial:

variable1=eeee&variable2=aaa

Se você quiser apenas uma reescrita direta sem fazer um redirecionamento, altere o elemento <action> para:

<action type="Rewrite" 
        url="folder/Default.aspx?&amp;variable1=ffff&amp;variable2=gggg" 
        appendQueryString="false" />
    
por 08.05.2012 / 02:38