yonght 发表于 2015-8-27 07:59:35

如何做301定向:301跳转代码全集(ASP|PHP|JSP|.NET)

301跳转通常用在网站换域名和为了保持链接统一性所用的。比如你原来的域名www.a.com现在换成www.b.com,用了301跳转后,访问www.a.com/about.html就会自动变成www.b.com/about.html。至于在什么情况下必须使用301重定向,这个问题之前我们已经介绍过了,先手站长可以去看看。下面摘抄一下设置301的代码吧,方便一下新手们:
301跳转代码全集(ASP|PHP|JSP|.NET)
1、IIS下301设置
Internet信息服务管理器 -> 虚拟目录 -> 重定向到URL,输入需要转向的目标URL,并选择“资源的永久重定向”。

2、ASP下的301转向代码

<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “http://www.xxx.com/”
%>

3、ASP.Net下的301转向代码

<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = “301 Moved Permanently”;
Response.AddHeader(”Location”,”http://www.xxx.com/”);
}
</script>

4、PHP下的301转向代码

header(”HTTP/1.1 301 Moved Permanently”);
header(”Location: http://www.xxx.com/”);
exit();

5、CGI Perl下的301转向代码

$q = new CGI;
print $q->redirect(”http://www.xxx.com/”);

6、JSP下的301转向代码

<%
response.setStatus(301);
response.setHeader( “Location”,“http://www.xxx.com/” );
response.setHeader( “Connection”,“close” );
%>

7、Apache下vhosts.conf中配置301转向

为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配置为:
<VirtualHost *:80>
ServerName www.xxx.com
DocumentRoot   
</VirtualHost>
<VirtualHost *:80>
ServerName xxx.com
RedirectMatch permanent ^/(.*) http://www.xxx.com/$1
</VirtualHost>

8、Apache下301转向代码

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

1)将不带WWW的域名转向到带WWW的域名下
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^xxx.com
RewriteRule ^(.*)$ http://www.xxx.com/$1

2)重定向到新域名
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)$ http://www.xxx.com/$1

3)使用正则进行301转向,实现伪静态
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^news-(.+)\.html$ news.php?id=$1
将news.php?id=123这样的地址转向到news-123.html

最后:在使用301永久性重定向命令让多个域名指向网站主域名时,也不会对网站的排名产生任何负面影响。希望对你有帮助。
页: [1]
查看完整版本: 如何做301定向:301跳转代码全集(ASP|PHP|JSP|.NET)