2011-09-29 50 views
0

一个简单的问题。我知道如何在PHP中发送一个404头,但是当我做的页面仍然继续加载内容。在这种情况下,我必须使用die()来杀死脚本。我有一个自定义的自制cms,速度非常快,非常适合我的网站。但由于某种原因,谷歌已经索引了一个不适当的链接到网站,这很可能是由于一些旧的代码不再存在。正在发生的事情是,目录,如“/AWebDirectory/AndAnother/function.fopen/”已经得到了附加到URL即php发送404头问题

www.someurl.com/index.php/AWebDirectory/AndAnother/function.fopen/ 

这不是抛出一个404的index.php存在,但CSS和东西由于目录结构而未加载。任何帮助表示赞赏。

+0

你需要用'.htaccess'来处理这个,而不是用PHP。如果你想摆脱它们,你必须将这些URL重写为'index.php'。 – Shef

回答

0

您需要退出脚本,否则它将继续运行。这个是正常的。我不是100%肯定,但我想你可能会寻找一个重定向:

<?php 

/** 
* @see http://php.net/manual/en/function.header.php 
*/ 

header("Location: http://www.example.com/"); /* Redirect browser */ 

/* Make sure that code below does not get executed when we redirect. */ 
exit; 
?> 

尝试同时使用404头,并重定向到您的自定义404错误页面。这应该让你启动并运行。

+0

为什么要退出? 404页是很正常的,你知道,他们确实有内容,就像其他页面一样。重要的是标题。你甚至没有给出一个'404'错误的例子,但有一个重定向。 – Shef

+0

基于他问的问题,他已经获得了404头位。退出后重定向发生,如果我没有错。 –