404错误页面
发布于:2022-01-17 09:50:54
#1 lijian
问一下jake
就是设置了404错误页面,那也只能控制action和controller的值(
http://localhost/item/index.php?c=main&a=index首页)
假如我这样
http://localhost/item/asdasdasdasdasd时,还是出现not found page!假日我想把这样的也转到404.html
这样可以设置吗?先谢谢jake了
2012-04-22 16:06:50
#2 jake
手册上面写着:
http://www.speedphp.com/dev-diy-404.html在UrlRewrite(伪静态)下的404错误页面,可以正常支持404页面的显示。
在非UrlRewrite的情况,只有“找不到控制器”的错误将被视作404错误,而其他页面无法找到的情况,会根据服务器本身的设置而定。
也就是说,如果要实现你想要的“正常支持404页面的显示”,那么有两个方法:
1. 使用UrlRewrite伪静态,详情还是参考手册。
2. 一般虚拟主机都可以配置的,或者自己设置apache的404转向,转到你的404页面上去。
2012-04-22 19:14:32
#3 chunjiao2012
我想请问什么叫做:
在UrlRewrite(伪静态)下的404错误页面因为我现在把'dispatcher_error' => "header('location:/404.html');",放在$spConfig = array()内,只是在控制器不正确时显示404。如果是数据库查询错误等其他情况,还是不显示404。你留参考的手册http://www.speedphp.com/dev-diy-404.html只是一个404页面,我找不到相关的信息。求指教!!
2014-08-01 14:26:53
#5 chunjiao2012
你的手册上只说了:
[size=12.727272033691406px]加入如下配置:'dispatcher_error' => "import(APP_PATH.'/404.html');exit();",[size=12.727272033691406px]可实现:当访问到“找不到控制器”的错误的时候,将显示404.html文件的内容。没有说清楚: “
UrlRewrite(伪静态)下的404错误页面,可以正常支持404页面的显示”。即:在其它错误页面未找到的时候,仍显示404?
你可以看一下我在“3楼”的问题,你应该没有看懂我的问题。
2014-08-04 09:49:13
#6 jake
抱歉,真不懂你的问题。
不过建议你稍微了解一下伪静态是什么样的一个实现原理,还有404的原理,就很容易解决你的问题了。
或者除了看手册,稍微动手试试,会更容易理解。
不过当然,首先的前提是你的服务器要支持rewrite,按你上面的描述,应该你的服务器还没支持rewrite,所以才会显示服务器自带的404
rewrite是将全部请求转发到index.php,包括找不到页面的404请求。
所以
dispatcher_error是在rewrite的情况下显示404的功能。
2014-08-04 09:56:15
#7 chunjiao2012
重新问:一个speedphp网站,使用了伪静态urlRewrite,服务器开启了rewrite。
如何实现将所有的错误页面转到404?
dispatcher_error只能实现一种错误(即控制器错误)的跳转。
那么请问:其他的怎么实现?求解答!!!
2014-08-12 13:17:29
#8 jake
帮你搜索了一下论坛,这里有说明
http://www.speedphp.com/thread-4644-2-1.html建议先自行搜索论坛,会更方便。
2014-08-12 13:25:01
#9 chunjiao2012
那个帖子看过,但是也还是不全面。
还有种情况:就是在当前页面的url后添加任意字符串它不会跳到404。
而页面
http://www.speedphp.com/thread-3459-1-1.html-534就会跳到404
2014-08-12 14:08:02
#10 jake
“当前页面的url后添加任意字符串它不会跳到404”
大部分网站的URL后面,你加上个?abc=任意字符串或者是&abc=任意字符串,都是不会到404的。
如果要做到那么与众不同,可以在程序里面接收参数进行判断。
2014-08-12 14:20:21