IIS下直接301设置
Internet信息服务管理器 ->虚拟目录 ->重定向到URL,输入需要转向的目标URL,并选择“资源的永久重定向”。
这个需要服务器直接操作,很多空间商不会给做。
介于空间管理程序和方法各不相同,例如之后的WEB操作管理 有可能导致301间接失效
所以如果不是自己独立服务器 不建议直接操作。条条大路通罗马看下:
1、采用isapi-rewirte组件 的伪静态完全独立,可以直接在原伪静态规则文件httpd.ini 加上301跳转代码 立即生效
【详解:利用 ISAPI Rewrite 做301永久重定向】
[ISAPI_Rewrite]
CacheClockRate 3600
RepeatLimit 32
RewriteEngine On
RewriteCond Host: ^boaer\.com$
RewriteRule (.*) http\://www\.boaer\.com$1 [I,RP]
注:----URL标准化的301重定向(以上代码)需要写在其他URL-rewrite代码之前。----
2、ASP下的301转向代码
<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “http://www.*****/***/301/”
%>
3、转向代码
<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = “301 Moved Permanently”
Response.AddHeader(”Location”,”http://www.*****.cn/***/301/“)
}
</script>
4、PHP下的301转向代码
header(”HTTP/1.1 301 Moved Permanently”)
header(”Location: http://www.*****.cn/***/301/”)
exit()
5、CGI Perl下的301转向代码
$q = new CGI
print $q->redirect(”http://www.*****.com/”)
6、转向代码
<%
response.setStatus(301)
response.setHeader( “Location”, “http://www.*****.cn/” )
response.setHeader( “Connection”, “close” )
%>
7、转向代码
新建.htaccess文件,输入下列内容(需要开启mod_rewrite):
1)将不带WWW的域名转向到带WWW的域名下
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^boaer.cn [NC]
RewriteRule ^(.*)$ http://www.*****.cn/$1 [L,R=301]
2)重定向到新域名
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)$ http://www.*****.cn/$1 [L,R=301]
3)使用正则进行301转向,实现伪静态
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^news-(.+)\.html$ news.php?id=$1
将news.php?id=123这样的地址转向到news-123.html
8、Apache下vhosts.conf中配置301转向
为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配置为:
<VirtualHost *:80>
ServerName www.*****.cn
DocumentRoot /home/lesishu
</VirtualHost>
<VirtualHost *:80>
ServerName lesishu.cn
RedirectMatch permanent ^/(.*) http://www.*****.cn/$1
</VirtualHost>
Apache下除了以上2种方法,还有其他配置方法和可选参数,建议阅读Apache文档。
301转向情况检测
http://www.seoconsultants.com/tools/headers.asp
http://www.internetofficer.com/seo-tool/redirect-check/
做网站优化,我们基本知道url标准化需要采用301重定向。重定向说直白点,就是通过方法将各种网络请求重新定个方向转到其它位置,也就是通常说的,网页跳转。那么如何设置和制作301重定向呢?下面列举几个比较常见的情况:
步骤/方法
第一种:对整个网站的多个页面设置301重定向方法
如果要对整个网站设置301重定向的话,建议大家还是单独建立一个301.php,文件名可以自己取。代码如下:
<?php
$the_host = $_SERVER['HTTP_HOST']//取得进入所输入的域名[网址:像www.siyuan-seo.com]
$the_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : ''//判断地址后面部分
$the_url = strtolower($the_url)//将英文字母转成小写
if($the_url=="/index.php") //判断是不是首页
{
$the_url=""//如果是首页,赋值为空
}
if($the_host !== 'www.icoa.cn')//如果域名不是带www的网址那么进行下面的301跳转
{
header('HTTP/1.1 301 Moved Permanently')//发出301头部
header('Location:http://www.siyuan-seo.com'.$the_url)//跳转到带www的网址
}
?>
注 意一下:代码if($the_host !== 'www.siyuan-seo.com')中的“!==”是不完全等于的意思,也可以用“!=”不等于,这样,除了可以将siyuan-seo.com 跳转到带www的网址,还可以把所有绑定到这个空间的域名跳转的www.siyuan-seo.com。
301.php文件写好后,用ftp软件上传到网站根目录下,一般就是web文件下。那么怎么调用呢?其实也很简单。
在需要设置301重定向的页面中调用301.php,代码:<?php include("301.php")//301重定向 ?>将这个代码放到你所有网页的最前面,这样就做好了。如下图:
2
第二种:网站单个页面设置301重定向方法
如果仅仅是网站中某个单页面进行301重定向设置,其实很简单,只要在PHP页面的头部加上下面两行代码就可以了:
<?php
Header("HTTP/1.1 301 Moved Permanently")
Header("Location: http://www.siyuan-seo.com")
?>如下图:
其实,大多数情况下,我们一般是不需要设置301重定向的,用到的情况也是很少,大家知道怎么做就可以了。
当你发现自己的才华撑不起野心时,就请安静下来学习吧
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)