最優(yōu)良人 » header http://www.dgkai.cn/blog 中山php|最優(yōu)網(wǎng)絡(luò) Mon, 13 May 2013 04:56:43 +0000 en hourly 1 http://wordpress.org/?v=3.1.4 PHP利用header函數(shù)實(shí)現(xiàn)各種狀態(tài)的跳轉(zhuǎn) http://www.dgkai.cn/blog/view-129.html http://www.dgkai.cn/blog/view-129.html#comments Mon, 15 Aug 2011 08:08:58 +0000 lin http://www.dgkai.cn/blog/?p=129 header實(shí)現(xiàn)301永久重定向
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: http://www.dgkai.cn");

header實(shí)現(xiàn)302臨時(shí)重定向
Header("HTTP/1.1 302 Found");
Header("Location: http://www.dgkai.cn");

header實(shí)現(xiàn)404無(wú)法找到頁(yè)面
Header("HTTP/1.1 404 Not Found");

一下函數(shù)可實(shí)現(xiàn)各種狀態(tài)的跳轉(zhuǎn):

/**
* 跳轉(zhuǎn)頁(yè)面
*
* 使用header()進(jìn)行頁(yè)面跳轉(zhuǎn),不顯示任何內(nèi)容.如果不能使用header跳轉(zhuǎn)
* @param string $url
* @param int $status
*/
function goto($url,$status=null)
{
if(!empty($status))
{
$status=intval($status);
$codes = array(
100 => "Continue",
101 => "Switching Protocols",
200 => "OK",
201 => "Created",
202 => "Accepted",
203 => "Non-Authoritative Information",
204 => "No Content",
205 => "Reset Content",
206 => "Partial Content",
300 => "Multiple Choices",
301 => "Moved Permanently",
302 => "Found",
303 => "See Other",
304 => "Not Modified",
305 => "Use Proxy",
307 => "Temporary Redirect",
400 => "Bad Request",
401 => "Unauthorized",
402 => "Payment Required",
403 => "Forbidden",
404 => "Not Found",
405 => "Method Not Allowed",
406 => "Not Acceptable",
407 => "Proxy Authentication Required",
408 => "Request Time-out",
409 => "Conflict",
410 => "Gone",
411 => "Length Required",
412 => "Precondition Failed",
413 => "Request Entity Too Large",
414 => "Request-URI Too Large",
415 => "Unsupported Media Type",
416 => "Requested range not satisfiable",
417 => "Expectation Failed",
500 => "Internal Server Error",
501 => "Not Implemented",
502 => "Bad Gateway",
503 => "Service Unavailable",
504 => "Gateway Time-out"
);
if (array_key_exists($status,$codes)) {
$code = $status;
$msg = $codes[$status];
$status = "HTTP/1.1 {$code} {$msg}";
} else {
$status = null;
}
}
if (!empty($status)) {
header($status);
}
if(!empty($url)) {
$url=url($url);header("Location: $url");
if ($code==404) {
echo "<meta http-equiv='refresh' content='0;url=$url'>";
}
}
exit;
}

]]>
http://www.dgkai.cn/blog/view-129.html/feed 250