En el módulo de reescritura de URL de IIS7, ¿puedo especificar en una regla de redireccionamiento que no se aplique a las solicitudes de publicación de HTTP? Estoy usando las plantillas proporcionadas por Microsoft para minúsculas de todas las URL y para agregar una barra al final. Sin embargo, tengo una solicitud de publicación de AJAX que no cumple con esta especificación pero se rompen y se reescriben como 301. No me preocupan las solicitudes POST para SEO, por lo que preferiría que solo pudiera especificar en la regla ignorarlo. A continuación son mis reglas:En el módulo de reescritura de URL de IIS7, ¿puedo especificar en una regla de redireccionamiento que no se aplique a las solicitudes de publicación de HTTP?
<rule name="AddTrailingSlashRule" stopProcessing="true">
<match url="(.*[^/])$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Redirect" url="{R:1}/" />
</rule>
<rule name="LowerCaseRule" stopProcessing="true">
<match url="[A-Z]" ignoreCase="false" />
<action type="Redirect" url="{ToLower:{URL}}" />
</rule>
Solo lo encontré tropezando en el sistema de reglas de IIS. La ventana "Agregar condición" ofrece una experiencia intellisense en el campo de entrada cuando escribe el primer '{'. – patridge
Gracias por esta respuesta. Fue una gran ayuda para mí, aunque descubrí que necesita especificar negate = "true" en esta condición para que la regla de reescritura se aplique a cosas que no son REQUEST_METHOD = POST. – JamieGaines
¡Gran captura, @thinkzig! Definitivamente tengo ese 'negate' en el lugar donde estoy usando esto; Debo haberlo perdido en la confusión para SO. He corregido la respuesta ahora. – patridge