IIS 重写与 URL 路径中的加号不匹配

IIS 重写与 URL 路径中的加号不匹配

我有以下 IIS 重写规则,

 <rule name="React Routes" stopProcessing="true">
                    <match url=".*" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="/" logRewrittenUrl="true" />
                </rule>

此规则始终有效。除非我们在路径中包含 URL,例如/A%2BD

所以,/ABD正在工作但/A%2BD不起作用。在日志中我看到

sc-status: 404
sc-substatus: 11

答案1

我发现我必须添加修复 404.11 HTTP 状态,

<security>
        <requestFiltering allowDoubleEscaping="true"/>
    </security>

相关内容