什么是HTTP重定向?

PHP做301重定向,php301重定向

<?php

$the_host = $_SERVER['HTTP_HOST'];//取得当前域名

$the_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';//判断地址后面部分


if($the_url=="/index.php")//判断是不是首页

{

$the_url="";//如果是首页,赋值为空

}

if($the_host !== 'www.xinlvtian.com')//如果域名不是带www的网址那么进行下面的301跳转

{

header('HTTP/1.1 301 Moved Permanently');//发出301头部

header('Location:http://www.xinlvtian.com'.$the_url);//跳转到带www的网址

}

?>

查看原文

? php $the_host =
$_SERVER [‘HTTP_HOST’]; // 取得当前域名 $the_url = isset (
$_SERVER [‘REQUEST_URI’]) ? $_SERVER [‘REQUEST_URI’] : ”;
/…

当你访问www.yegle.net时,地址栏的地址会自动变成yegle.net。当你访问ye.gl的时候,地址栏的地址会变成yegle.net。这就是HTTP重定向

一个HTTP请求,返回的HTTP Response
Header里,第一行是HTTP的状态码。正常情况下,HTTP请求返回的状态码是200
OK。
正常的HTTP请求,返回200 OK:

其他的比较知名的还有例如:

404 Not Found
301 Moved Permanently
302 Found
500 Internal Server Error

HTTP重定向就是通过301和302两种状态码来实现的。

302是临时重定向的意思。表示被访问页面因为各种需要被临时跳转到其他页面。具体的例子是访问

浏览器在收到302 Found的状态码之后会在返回的HTTP Response
Header中查找Location字段,然后访问对应地址。在这个例子中,浏览器就会访问
(嗯这是一个递归,你懂的…)

301是永久重定向。这样的例子很好找。例如

同样,浏览器在发现301的状态码之后会查找Location字段,然后访问那个地址。

Location字段的格式很随意,既可以是绝对地址,也可以是相对地址,还可以是相对根目录的地址。以下Location字段都是合法的:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图