当前位置:首页 > PHP教程 > php应用 > 列表

php域名301转向程序代码

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-22 09:40:27 浏览: 评论:0 

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");?> 

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

  1. $the_host = $_SERVER['HTTP_HOST'];//取得当前域名 
  2. if($the_host != 'noniu.com')//判断获取的这个域名是不是你想要的(即定向后的域名) 
  3. header("HTTP/1.1 301 Moved Permanently");//发出301头部 
  4. header("Location:phpfensi.com) //跳转到你希望的域名 
  5. exit(); 

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

  1. <?php 
  2. $the_host = $_SERVER['HTTP_HOST'];//取得当前域名 
  3. $the_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';//判断地址后面部分 
  4. $the_url = strtolower($the_url);//将英文字母转成小写 
  5. if($the_url=="/index.php")//判断是不是首页 
  6. $the_url="";//如果是首页,赋值为空 
  7. if($the_host !== 'www.phpfensi.com')//如果域名不是带www的网址那么进行下面的301跳转 
  8. header('HTTP/1.1 301 Moved Permanently');//发出301头部 
  9. header('Location:http://www.phpfensi.com'.$the_url);//跳转到带www的网址 
  10. ?> 

Apache下301转向代码

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

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

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

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

  1. Options +FollowSymLinks 
  2. RewriteEngine on 
  3. RewriteRule ^(.*)$ http://www.phpfensi.com /$1 [L,R=301] 

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

  1. # BEGIN WordPress 
  2. Options +FollowSymlinks 
  3. RewriteEngine on 
  4. RewriteCond %{http_host} ^phpfensi.com  [NC] 
  5. RewriteRule ^(.*)$ http://www.phpfensi.com /$1 [L,R=301] 
  6. rewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/ 
  7. rewriteRule ^index.php$ http://www.phpfensi.com / [R=301,L] 
  8. RewriteRule ^index.php$ - [L] 
  9. RewriteCond %{REQUEST_FILENAME} !-f 
  10. RewriteCond %{REQUEST_FILENAME} !-d 
  11. RewriteRule . /index.php [L] 
  12. # END WordPress 

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

Tags: php域名转向 301转向程序

分享到: