dsovc00684 2017-10-03 14:47
浏览 84
已采纳

apache conf errordocument不适用于php中声明的404标头

I am issuing a 404 in my coupon.php page:

<?php
$id=$_GET['cid'];
$rs=mysqli_fetch_assoc(mysqli_query($scx_dbh,"select * from locations where locid=$id"));
if($rs==NULL){
  header("HTTP/1.0 404 Not Found");
}

Inside my apache config httpd.conf I have the following declared:

ErrorDocument 404 /404.html

However when i go to the page that issues the 404 it does not load the error document but just shows a browser error stating a 404. It only seems to load when a page does not exist, not when i issue a 404 in php.

Any help would be appreciated

  • 写回答

1条回答 默认 最新

  • dtzd65908 2017-10-03 14:57
    关注

    Sending a 404 error using header("HTTP/1.0 404 Not Found"); will only tell the end browser that there was an error finding this page. It won't show your custom error page.

    If you want to show the end user an error page, you will need to include or redirect to it.

    Place either of the two below options under your 404 header.

    Include Option

    include('/path/to/404.html);

    Redirect Option

    header("Location: /path/to/404.html");

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 cs loadimage运行不了,easyx也下了,没有用
  • ¥15 r包runway详细安装教程
  • ¥15 Html中读取Json文件中数据并制作表格
  • ¥15 谁有RH342练习环境
  • ¥15 STM32F407 DMA中断问题
  • ¥15 uniapp连接阿里云无法发布消息和订阅
  • ¥25 麦当劳点餐系统代码纠错
  • ¥15 轮班监督委员会问题。
  • ¥20 关于变压器的具体案例分析
  • ¥15 生成的QRCode圖片加上下載按鈕