zoukankan      html  css  js  c++  java
  • IIS7.0设置404错误页,返回500状态码

      一般在II6下,设置自定义404错误页时,只需要在错误页中选择自定义的页面,做自己的404页面即可。但是在IIS7.0及以上时,设置完404错误页后,会发现状态码返回的是500,并且可能会引起页面乱码。查找资料,发现好多资料写的不够详细,不能完美解决问题。特将我的经验分享一下,希望能帮助到大家。

      经过试验,发现有两种方案可用,各有利弊,我使用的是第二种方案。

      方案1:

      1. 在IIS中,找到对应站点,打开“功能视图”-“IIS栏”-“错误页”;

      2. 双击“404”,打开“编辑自定义错误页”对话框;

      3. 选中“在此网站上执行URL”,输入自定义404错误页的URL(注意:此处URL是相对于网站根目录的相对路径,不能使用绝对路径),点击“确定”进行保存;

      

      4. 选中“404”,点击右侧栏中的“编辑功能设置”,打开“编辑自定义错误页”对话框;

      5. 在“错误响应”框中,选中“自定义错误页”,点击“确定”进行保存;

      6. 重启IIS。

      

      优缺点:此种方法优点是设置方便,不需要改动代码,只需要修改参数即可;但缺点是按照此种方法设置之后,服务器404错误时,会直接将自定义页面给返回给客户端,因此状态代码会返回200,不利于搜索引擎SEO优化;

      方案2:

      1. 打开 C:WindowsSystem32inetsrvconfig 路径下的 applicationHost.config 文件(该文件是设置IIS参数的);

      2. 搜索找到“<httpErrors>” 选项,将该选项的 allowAbsolutePathsWhenDelegated设置为”true”;

      

      3. 在IIS中,找到对应站点,打开“功能视图”-“IIS栏”-“错误页”;

      4. 双击“404”,打开“编辑自定义错误页”对话框;

      5. 选中“将静态文件中的内容插入错误响应中”,选择或输入自定义404错误页的绝对路径(注意:此处路径是使用绝对路径,一定不能使用相对路径,否则会找不到页面),点击“确定”进行保存;

      

      6. 选中“404”,点击右侧栏中的“编辑功能设置”,打开“编辑自定义错误页”对话框;

      7. 在“错误响应”框中,选中“自定义错误页”,点击“确定”进行保存;

      8. 重启IIS。

       优点:设置之后,返回的状态代码依旧是404,不影响搜索引擎SEO优化;

      注意:如果不设置1、2步骤,直接从第3步设置,设置完成之后,返回的状态码为500,且会显示乱码。

  • 相关阅读:
    用JS实现汉字转拼音
    jQuery Validate验证框架详解
    移动前端自适应适配布局解决方案和比较
    js获取当前日期时间“yyyy-MM-dd HH:MM:SS”
    jQuery cookie
    dataTable 从服务器获取数据源的两种表现形式
    dataTable 参数说明
    如何在HTML网页中显示HTML标签内容?
    java中构造函数前用public修饰与没有任何修饰符相比,有什么区别?
    面向对象设计
  • 原文地址:https://www.cnblogs.com/xuyangblog/p/4843854.html
Copyright © 2011-2022 走看看