Home > php教程 > php手册 > php域名301转向程序代码

php域名301转向程序代码

WBOY
Release: 2016-06-02 09:13:52
Original
934 people have browsed it

php中页面301跳转我们使用header()函数发送状态代码301的同时再跳转到指定页面了,实现的方法非常的简单.

注意:

301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于:

301 redirect:301 代表永久性转移(Permanently Moved),302 redirect:302 代表暂时性转移,Temporarily Moved.

例子,在php中正常的临时跳转通常使用,代码如下:

<?php header("Location:your_dest_url");?>
Copy after login

最简单的做法,代码如下:

$the_host = $_SERVER[&#39;HTTP_HOST&#39;];//取得当前域名 
if($the_host != &#39;noniu.com&#39;)//判断获取的这个域名是不是你想要的(即定向后的域名) 
{ 
    header("HTTP/1.1 301 Moved Permanently");//发出301头部 
    header("Location:phprm.com) //跳转到你希望的域名 
    exit(); 
}
Copy after login

这个还可以实现比如phprm.com 跳转到www.phprm.com 上,也就是让所有的页面都用带www的网址,代码如下:

<?php 
$the_host = $_SERVER[&#39;HTTP_HOST&#39;];//取得当前域名 
$the_url = isset($_SERVER[&#39;REQUEST_URI&#39;]) ? $_SERVER[&#39;REQUEST_URI&#39;] : &#39;&#39;;//判断地址后面部分 
$the_url = strtolower($the_url);//将英文字母转成小写 
if($the_url=="/index.php")//判断是不是首页 
{ 
    $the_url="";//如果是首页,赋值为空 
} 
if($the_host !== &#39;www.phprm.com&#39;)//如果域名不是带www的网址那么进行下面的301跳转 
{ 
    header(&#39;HTTP/1.1 301 Moved Permanently&#39;);//发出301头部 
    header(&#39;Location:http://www.phprm.com&#39;.$the_url);//跳转到带www的网址 
}
Copy after login

Apache下301转向代码

新建.htaccess文件,输入下列内容,需要开启mod_rewrite.

1)将不带WWW的域名转向到带WWW的域名下,代码如下:

Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^lesishu.cn [NC] 
RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301]
Copy after login

2)重定向到新域名,代码如下:

Options +FollowSymLinks 
RewriteEngine on 
RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301]
Copy after login

wordpres根目录301跳转,代码如下:

# BEGIN WordPress 
Options +FollowSymlinks 
RewriteEngine on 
RewriteCond %{http_host} ^phprm.com  [NC] 
RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301] 
rewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/ 
rewriteRule ^index.php$ http://www.phprm.com / [R=301,L] 
RewriteRule ^index.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
# END WordPress
Copy after login

分析:php 301跳转代码只适合于全php页面或单页面做跳转了,apache/iis 301跳转适用于大量的网站域名301跳转了,他们两共同点都是实现301但两者各人有优点吧,大家自行根据自己情况选择吧.


文章链接:

随便收藏,请保留本文地址!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template