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

php域名301转向程序代码

WBOY
Freigeben: 2016-06-02 09:13:52
Original
930 Leute haben es durchsucht

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");?>
Nach dem Login kopieren

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

$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(); 
}
Nach dem Login kopieren

这个还可以实现比如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的网址 
}
Nach dem Login kopieren

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]
Nach dem Login kopieren

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

Options +FollowSymLinks 
RewriteEngine on 
RewriteRule ^(.*)$ http://www.phprm.com /$1 [L,R=301]
Nach dem Login kopieren

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
Nach dem Login kopieren

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


文章链接:

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage