1

我们正在使用 IPDR,它在某种意义上工作得很好,它阻止了我们期望它阻止的东西并允许它应该允许的东西。我们感到困惑的是为什么它将状态码返回给客户端(500)。

<location path="pathtoblock">
    <system.webServer>
      <security>
        <ipSecurity allowUnlisted="false" denyAction="NotFound" >
          <clear/>
          <add allowed="true" ipAddress="127.0.0.1" />
          <add allowed="true" ipAddress="192.168.1.1" />
        </ipSecurity>
      </security>
    </system.webServer>
  </location>

从上面可以看出,我们正在使用denyAction="NotFound". 可以理解,所以我们预计会出现 404 错误,但我们在浏览器中收到 500 错误和错误消息,"The page cannot be displayed because an internal server error has occurred."我检查了 IIS 日志:

date time  s-ip     cs-method   cs-uri-stem cs-uri-query    s-port cs-username c-ip cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status time-taken
2015-11-18 18:06:25 192.168.1.2 GET         /pathtoblock - 443 -  192.168.1.3     Mozilla/5.0+(Windows+NT+6.3;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/46.0.2490.86+Safari/537.36 - 404 503 5 62

为什么我们没有收到预期的 404?

4

0 回答 0