最近做了一个404页面,iis7.5上设置后发现不生效。总的来说设置后还是要修改下东西的,下面的就详细的说下:
打开iis7.5后,找到对应的站点,找到错误页:
点开后修改成如下图所示:
以下是设置后生成的web.config文件里的代码,这个代码设置后404页面是不生效。
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <httpErrors> <remove statusCode="404" subStatusCode="-1" /> <error statusCode="404" prefixLanguageFilePath="" path="404.html" responseMode="File" /> </httpErrors> </system.webServer> </configuration>
那么经过一番研究,发现只要稍作修改就可以了,httpErrors加一个errorMode="Custom",代码如下:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <httpErrors errorMode="Custom"> <remove statusCode="404" subStatusCode="-1" /> <error statusCode="404" prefixLanguageFilePath="" path="404.html" responseMode="File" /> </httpErrors> </system.webServer> </configuration>
这样就大功告成了!!!
小记:
1、以后其他网站再用的时候,只需要把做好的404页面相关的页面和这个修改后web.config文件直接复制放在程序根目录里即可。不用再单独设置也可成效,查询页面返回状态码同样也是404。
2、如果“消息类型”你选择的是“文件”,则只能使用.html或htm结尾的文件,IIS执行后会自动输出404状态。
3、如果你“消息类型”选择了“URL”,则必须用asp文件(因为只有在asp文件中才能设置404状态),否则访问错误页时会返回200状态码。
原创文章请注明转载自霍者博客本文地址:http://www.huozheweb.com/post/774.html,标题:iis7.5设置404页面不生效的原因和方法的探索