好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

iis和apache及PHP页面设置301重定向跳转方法 - php高

iis和apache及PHP页面设置301重定向跳转方法

本文将通过IIS、APACHE、ASP、PHP几种服务器端或页面程序端分别讲解如何设置301重定向,先还是简单介绍下重定向.

301重定向:指的是一种非常重要的[自动转向]技术--其实谈不上技术,即网址重定向--用户访问一个地址或目录,可以指定跳转到另一个地址.

301重定向,这是所有重定向方法中唯一符合seo搜索引擎规则的重定向,这也是SEO中的一个基础名词,比方:一个站用HdhCmsTestphpfensi测试数据、phpfensi测试数据绑定,就会存在2个权重,如果将phpfensi测试数据重定向到HdhCmsTestphpfensi测试数据,就会权重集中,相应增加权重值.

1、IIS服务器上设置301重定向

准备工作:你要有服务器设置权限,可以随意开通新的虚拟空间!

第一,新建一个虚拟空间,将你需要进行重定向的域名与之解析绑定;

第二,我的电脑-->打开[控制面板]-->[管理工具]-->打开[Internet 信息服务],左侧会有树形菜单,找到你的网站--右键[属性]--选择[主目录]选项卡,再选择[重定向到URL],然后在地址框栏输入需要定向的目标域名,最后将选项卡中的[资源的永久重定向]选择上,点击[确定]完成操作。属性界面设置,如下图所示:

2、Unix/linux主机上apache设置301重定向

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

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

Options +FollowSymLinks   RewriteEngine on   RewriteCond %{HTTP_HOST} ^phpfensi测试数据 [NC]   RewriteRule ^(.*)$HdhCmsTestphpfensi测试数据/301/[L,R=301] 

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

Options +FollowSymLinks   RewriteEngine on   RewriteRule ^(.*)$HdhCmsTestphpfensi测试数据/301/ [L,R=301] 

3)使用正则进行301转向,实现伪静态,代码如下:

Options +FollowSymLinks   RewriteEngine on   RewriteRule ^article-(.+).html$ article.php?id=$1 

将article.php?id=123这样的地址转向到article-123.html 

3、ASP程序页面中设置301重定向代码

在公共头部文件或全局调用文件里,加上如下代码:

<%@ Language=VBScript %>  <%  if request.ServerVariables("SERVER_NAME")!="HdhCmsTestphpfensi测试数据" then   Response.Status="301 Moved Permanently"  Response.AddHeader "Location", "http://HdhCmsTestphpfensi测试数据"  Response.End   end if  %> 

原理: 判断请求的server_name,是否与主目标网址一样,不一样则重定向.

4、PHP程序页面中设置301重定向, 代码如下:

$host =  'HdhCmsTestphpfensi测试数据' ;  //你目标定向的网址    if  ( $_SERVER [ 'HTTP_HOST' ] !=  $host ) //若不是则进行重定向,后面页面参数不变   { header( "HTTP/1.1 301 Moved Permanently" ); header( "Location: http://{$host}{$_SERVER[REQUEST_URI]}" );  }   unset( $host ); 

原理: 首先定义目标定向网址,然后判断当前请求访问的host是否一致,若为否,则进行重定向.

查看更多关于iis和apache及PHP页面设置301重定向跳转方法 - php高的详细内容...

  阅读:52次