教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 iis和apache及PHP页面设置301重定向跳转方法

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

发布时间:2016-10-26   编辑:jiaochengji.com
教程集为您提供iis和apache及PHP页面设置301重定向跳转方法等资源,欢迎您收藏本站,我们将为您提供最新的iis和apache及PHP页面设置301重定向跳转方法资源
301重定向有很多办法可以实现,如iis可以,apache,php,asp等等都可以快速的设置页面301重定向跳转了,下面我来给各位同学介绍介绍

本文将通过IIS、APACHE、ASP、PHP几种服务器端或页面程序端分别讲解如何设置301重定向,先还是简单介绍下重定向。
301重定向:指的是一种非常重要的“自动转向”技术--其实谈不上技术,即网址重定向--用户访问一个地址或目录,可以指定跳转到另一个地址。
301重定向,这是所有重定向方法中唯一符合seo/seo.html" target="_blank">搜索引擎规则的重定向,这也是SEO中的一个基础名词,比方:一个站用www.jiaochengji.com、jquerycn.cn绑定,就会存在2个权重,如果将jquerycn.cn重定向到www.jiaochengji.com,就会权重集中,相应增加权重值。

<span style="color: rgb(0,0,255)">1、IIS服务器上设置301重定向</span>
准备工作:你要有服务器设置权限,可以随意开通新的虚拟空间!
第一,新建一个虚拟空间,将你需要进行重定向的域名与之解析绑定;
第二,我的电脑-->打开“控制面板”-->“管理工具”-->打开“Internet 信息服务”,左侧会有树形菜单,找到你的网站--右键“属性”--选择“主目录”选项卡,再选择“重定向到URL”,然后在地址框栏输入需要定向的目标域名,最后将选项卡中的“资源的永久重定向”选择上,点击“确定”完成操作。属性界面设置,如下图所示:



<span style="color: rgb(0,0,255)">2、Unix/linux主机上apache设置301重定向</span>

新建.htaccess文件,输入下列内容(需要开启mod_rewrite):  
<span style="color: rgb(0,0,255)">1)将不带WWW的域名转向到带WWW的域名下</span>
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy7071')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy7071>
Options FollowSymLinks
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^jquerycn.cn [NC]
RewriteRule ^(.*)$www.jiaochengji.com/301/[L,R=301]  

<span style="color: rgb(0,0,255)">2)重定向到新域名</span>
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy4093')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy4093>
Options FollowSymLinks
RewriteEngine on 
RewriteRule ^(.*)$www.jiaochengji.com/301/ [L,R=301]

<span style="color: rgb(0,0,255)">3)使用正则进行301转向,实现伪静态</span>
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy2293')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy2293>
Options FollowSymLinks
RewriteEngine on 
RewriteRule ^article-(. ).html$ article.php?id=$1 
将article.php?id=123这样的地址转向到article-123.html

<span style="color: rgb(0,0,255)">3、ASP程序页面中设置301重定向代码</span>
在公共头部文件或全局调用文件里,加上如下代码:
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy7705')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy7705>

<%@ Language=VBScript %>

<%
if request.ServerVariables("SERVER_NAME")!="www.jiaochengji.com" then
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.jiaochengji.com"
Response.End 
end if
%>

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

<span style="color: rgb(0,0,255)">4、PHP程序页面中设置301重定向</span>
<span style="color: rgb(0,0,255)">代码如下:</span>(比较完美的写法)

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy4692')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy4692>$host= 'www.jiaochengji.com'; //你目标定向的网址 
if ($_SERVER['HTTP_HOST'] != $host)//若不是则进行重定向,后面页面参数不变
{ header("HTTP/1.1 301 Moved Permanently"); header("Location: http://{$host}{$_SERVER[REQUEST_URI]}");
}
unset($host);<span style="color: rgb(0,0,255)">原理:</span>首先定义目标定向网址,然后判断当前请求访问的host是否一致,若为否,则进行重定向

您可能感兴趣的文章:
php 301 永久重定向之Apache与IIS
php 301重定向的实现方法
iis和apache及PHP页面设置301重定向跳转方法
IIS 301重定向设置
php 301重定向跳转解决方法
php 301转向的实现方法分享
301用法与错误详解
PHP 301跳转的方法详解
php域名301转向程序代码
PHP网站301重定向方法举例

[关闭]
~ ~