4
IIS 7.5:如何使用Windows身份验证配置自定义“身份验证错误”页。401标头问题
我有一个在IIS 7.5下运行的php网站。该站点由Windows身份验证保护,并且可以正常运行: 当用户访问该站点时,系统会要求他们输入用户名/密码并通过身份验证。如果用户单击“取消”或3次输错密码,则会显示401错误页面: 现在,我想显示自定义页面来解释如何登录。因此,我转到“错误”页面,选择状态码401.2并将其指向我要显示的页面: 然后,确保每个人都打开了自定义错误。还有kaa-boom!身份验证不再起作用,不会向用户显示密码提示。如文档所述,Windows身份验证的工作原理是先发送401答复,然后浏览器要求用户提供提供者凭据,然后他们确定下一步要做什么。 此处发生的情况:在首次请求页面时,IIS尝试发送401标头,但注意到web.config表示“在401上重定向到此页面”。而不是身份验证,它只提供重定向页面。 我尝试替换401、401.1、401.2-没什么区别。 我在做什么错以及如何在用户身份验证错误上给出自定义页面? ps这是web.config: <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <httpErrors errorMode="Custom"> <remove statusCode="500" subStatusCode="-1" /> <remove statusCode="404" subStatusCode="-1" /> <remove statusCode="401" subStatusCode="-1" /> <error statusCode="401" subStatusCode="2" prefixLanguageFilePath="" path="/not_restricted/401.htm" responseMode="ExecuteURL" /> <error statusCode="404" prefixLanguageFilePath="" path="/not_restricted/404.htm" responseMode="ExecuteURL" /> </httpErrors> <httpProtocol> <customHeaders> <remove name="X-Powered-By" /> </customHeaders> </httpProtocol> </system.webServer> …