header 404(php header 404写法 php header函数用法)
一、php header 函数不能正常跳转的几种解决办法
PHP页面跳转一、header()函数
header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出到浏览器。
header()函数的定义如下:
void header(string string [,bool replace [,int http_response_code]])
可选参数replace指明是替换前一条类似标头还是添加一条相同类型的标头,默认为替换。
第二个可选参数http_response_code强制将HTTP相应代码设为指定值。 header函数中Location类型的标头是一种特殊的header调用,常用来实现页面跳转。注意:1.location和“:”号间不能有空格,否则不会跳转。
2.在用header前不能有任何的输出。
3.header后的PHP代码还会被执行。例如,将浏览器重定向到冠威博客
<?php
//重定向浏览器
header("Location: ");
//确保重定向后,后续代码不会被执行
exit;
?>
PHP页面跳转二、Meta标签
Meta标签是HTML中负责提供文档元信息的标签,在PHP程序中使用该标签,也可以实现页面跳转。若定义http-equiv为refresh,则打开该页面时将根据content规定的值在一定时间内跳转到相应页面。
若设置content="秒数;url=网址",则定义了经过多长时间后页面跳转到指定的网址。例如,使用meta标签实现疫苗后页面自动跳转到冠威博客。
< meta http-equiv="refresh" content="1;url=">
例如,以下程序meta.php实现在该页面中停留一秒后页面自动跳转到www.guanwei.org。
<?php
$url="";?>
< html>
< head>
< meta http-equiv="refresh" content="1; url=<?php echo$url;?>">
</head>
< body>
页面只停留一秒……
</body>
</html>
PHP页面跳转三、JavaScript(常用、推荐)
例如,此代码可以放在程序中的任何合法位置。
<?php
$url="";
echo"<script language='javascript' type='text/javascript'>";
echo"window.location.href='$url'";
echo"</script>";
?>
二、Php header()函数语法及使用代码
语法:
复制代码
代码如下:
Void
header(string
$string[,bool
$replace=true
[,
int
$http_response_code)
向客户端发送原始的HTTP报头
需注意:
Header函数必须在任何实际的输出前调用,无论是一般的html标签、文件中空行,或者来自php。就是在这个函数之前不能有任何形式的输出。
参数说明:
参数描述
string必需。规定要发送的报头字符串。
replace可选。指示该报头是否替换之前的报头,或添加第二个报头。
默认是
true(替换)。false(允许相同类型的多个报头)。
http_response_code可选。把
HTTP
响应代码强制为指定的值。(PHP
4
以及更高版本可用)
常见用法实例:
一、发送服务器状态码
复制代码
代码如下:
header('HTTP/1.0
404
Not
Found');
常用状态码:
状态码说明
100-199表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程
200-299成功接收请求,并已完成整个处理过程,常用200
300-399未完成请求,客户端需要进一步细化请求,比如,请求的资源已经移动到一个新的地址,常用302,304
400-499客户端请求有误
常用404
500-599服务器端出现错误,常用500
详细见:HTTP&FTP相应提示信息
二、页面跳转
复制代码
代码如下:
//
立即跳转
header('Location:
;);
//
3秒后跳转
header('refresh:3;url=;);
3.设置浏览器缓存
强制浏览器不进行缓存!
[code]
//header('Expires:-1');
header('Expires:
Mon,
26
Jul
1997
05:00:00
GMT');
header('Cache-Control:no-cache,must-revalidate');
header('pragma:no-cache');
header('Last-Modified:
'.
date('D,
j
M
Y
H:i:s
T')
);
三、php中header()作用
header的用法
标头(header)是服务器以 HTTP协义传 HTML资料到浏览器前所送出的字串,在标头
与 HTML文件之间尚需空一行分隔。有关 HTTP的详细说明,可以参 RFC 2068官方文件
()。在 PHP中送回 HTML资料前,需先
传完所有的标头。
注意:传统的标头一定包含下面三种标头之一,并只能出现一次。
Content-Type: xxxx/yyyy
Location: xxxx:yyyy/zzzz
Status: nnn xxxxxx
在新的多型标头规格(Multipart MIME)方可以出现二次以上。
使用范例
范例一:本例使浏览器重定向到 PHP的官方网站。
Header("Location: ";);
exit;
>?
范例二:要使用者每次都能得到最新的资料,而不是 Proxy或 cache中的资料,可以使用下列的标头
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified:". gmdate("D, d M Y H:i:s")."GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
>?
范例三:让使用者的浏览器出现找不到档案的信息。
header("Status: 404 Not Found");
>?
范例四:让使用者下载档案。
header("Content-type: application/x-gzip");
header("Content-Disposition: attachment; filename=文件名\");
header("Content-Description: PHP3 Generated Data");
?>
header重定向就等价于替用户在地址栏输入url
---------------------------------
//刚好找到比较详细的资料!