Windows Server 2008 R2 SP1上的IIS 7
我已将以下规则添加到我的web.config中,以将所有传入请求重定向到HTTPS
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>
当URL或文件名中存在&符号(&amp;)时,它会失败。我已经查看了一些提供的解决方案,并且对通过注册表允许特殊字符不感兴趣。有没有办法在重定向规则之前执行重写以将&符号编码为&
或%26? HTTPS重定向规则是使用原始URL还是新重写/编码的版本?
答案 0 :(得分:1)
我在Windows Server 2012,IIS 8.5上遇到了类似的问题,并为此文件提供了类似于以下规则的规则&#34;测试&amp;再次测试.pdf&#34;重定向到名为&#34; yourdomain.com/newPdfFileToDisplay.pdf"
的新域/文件 <rule name="Redirect pdf File">
<match url="Testing ([&]) Testing Again.pdf" />
<action type="Rewrite" url="http://yourdomain.com/newPdfFileToDisplay.pdf" />
</rule>