zoukankan      html  css  js  c++  java
  • PHP发送返回404状态码

    1. 默认的由Apache自动处理的404

        修改Aache的配置文件 httpd.conf 中的

        ErrorDocument 404 /404.html

        或者使用 .htaccess文件,同时有要把 httpd.conf中的deny都改成allow

        文件里也是写上面那句 ErrorDocument 404 /404.html 就可以了

    2. 人工强制返回404状态码

    1 function error_to_back_home(){
    2     /*@是抑制显示错误信息,有错也不显示*/
    3     @header("http/1.1 404 not found"); 
    4     @header("status: 404 not found"); 
    5     @header("location: /404.html"); //跳转到404页面
    6     exit();
    7 }
    View Code

        这个代码虽然能够实现我的要求,但是本人依然觉得很奇怪,

        难道不是只要我返回404状态码,Apache也做了相应的404配置,

        这样不会自动跳转到404页面的吗,非得要我手动跳转?期待高手解答一下。

        针对某些特殊情况,对上面的代码进一步优化:

    1 @header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");//不区分协议1.1 /1.0
    2 @header("Status: 404 Not Found");
    3 
    4 $_SERVER['REDIRECT_STATUS'] = 404;
    5 //If you don't know which web page is in use, use any page that doesn't exists
    6 $handle = curl_init('http://'. $_SERVER["HTTP_HOST"] .'/404missing.html');
    7 curl_exec($handle);
    8 exit();
    View Code

       

  • 相关阅读:
    Java与Http协议
    android之VideoView和视频播放View的扩展
    Android之SurfaceView实现视频播放
    AchartEngineActivity引擎绘制柱状图、曲线图
    Android消息推送
    字符串如何排序
    Java内部类总结
    利用反射机制实现工厂设计模式的高扩展性
    Java反射机制
    android AsyncTask介绍
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/4497603.html
Copyright © 2011-2022 走看看