㈠ 大神们 thinkphp怎么设置404页面 谢谢
在ACTION中新建一个文件EmptyAction.class.php,文件中的代码如下:
<?php
classEmptyActionextendsAction{
function_empty(){
header("HTTP/1.0404NotFound");//使HTTP返回404状态码
$this->display("Public:404");
}
}
?>
在apache中设置
在你的网站配置中加入ErrorDocument404/404.html即可。
在iis中设置
IIS/ASP.net下设置404错误页面
打开apachehttpd.conf配置文件或者新建.htaccess配置文件
首先,修改应用程序根目录的设置,打开“web.config”文件编辑,在其中加入如下内容:
<configuration>
<system.web>
<customErrorsmode=”On”defaultRedirect=”error.asp”>
<errorstatusCode=”404″redirect=”notfound.asp”/>
</customErrors>
</system.web>
</configuration>
注:上文例中“error.asp”为系统默认的404页面,“notfound.asp”为自定义的404页面,使用时请修改相应文件名。
然后,在自定义的404页面“notfound.asp”中加入:
<%
Response.Status=“404NotFound”
%>
php404
if(如果没有任何结果)
{
//以前是仅仅显示“该帖子已经不存在”的提示,现在是:
require(’/404.php’);
@header(’HTTP/1.1404NotFound’);
@header(’Status:404NotFound’);
exit;
}
㈡ PHP如何使404页面重定向
最近在改一些东西,包括Discuz论坛,在处理Discuzde修改时特别是重新写了一个404de页面,让用户访问不存在de页面时去访问这个404页面。但是遇到了一个很奇怪de问题,即无法重定向到这个页面。
最初操作:
1、把apache中de配置文件里 加入代码:ErrorDocument 404 /404.php
2、在404页面de代码里加上<?php header(”HTTP/1.0 404 Not Found” ?> 。这个方法是向客户端发送一个自然deHTTP头。这个方法要在没you向客户端发送任何信息之前使用,因此加在404.phpde文件头最好。
经过对配置文件和DZ论坛代码de查看,发现原因:rewrite规则问题,即我做伪静态de处理,导致第二种地址规则you效,于是已经pass过了服务器层,apachede404定义不再起作用,所以在读取数据dephp文件会被执行。针对这种情况应该做处理。
处理:
1、找到被执行de文件:如viewthread.php;
2、在查询数据后,加上对数据de判断,如果为空,则填写重定向代码;
3、代码:
if(如果没you任何结果)
{
//以前是仅仅显示“该帖子已经不存在”de提示,现在是:
require(’/404.php’);
@header(’HTTP/1.1 404 Not Found’);
@header(’Status: 404 Not Found’);
exit;
}
结果:以上问题解决,可以以404de状态重定向到我自定义de404页面。
㈢ php 跳转到404
在网站根目录新建个404.html 内容是你自己的。
然后在 index.php 里面需要404的地方这样写:
<?php
header('HTTP/1.1 404 Not Found');
header('location: /404.html');
㈣ php中如何让页面返回404错误代码呢
一般在空间商的网站里面的个人控制面板里面都有页面错误设置,不不用那么麻烦。