爱子日志

域名301重定向

Apache服务器 Mod-Rewrite 模式,用.htaccess文件

放在网站根目录对全站有效,.htaccess,Linux Server

①访问过来的域名不是www.guoy.cn的,都进行跳转

RewriteCond %{HTTP_HOST} !^www.guoy.cn$ [NC]
RewriteRule ^(.*)$ http://www.guoy.cn/$1 [L,R=301]

②如需要跳转到首页

RewriteCond %{HTTP_HOST} !^www.guoy.cn$ [NC]
RewriteRule ^(.*)$ http://www.guoy.cn/ [L,R=301]

③如需把/old.htm转到http://www.guoy.cn/new.htm

redirect 301 /old.htm http://www. guoy.cn/new.htm




Windows系统

在IIS做301重定向设定(HTML无法做301转向)
新建一个站点→绑定www.guoy.com.cn→主目录→重定向到URL→重定向到:www.guoy.cn→资源的永久性重定向

ISAPI_Rewrite,带www的域名301转向到不带www域名的代码:

# ISAPI_Rewrite 1.3 版本

RewriteCond Host: ^www\.guoy\.cn$
RewriteRule (.*) http\://guoy\.cn$1 [I,R]


# ISAPI_Rewrite 2.x 版本

RewriteCond Host: ^www\.guoy\.cn$
RewriteRule (.*) http\://guoy\.cn$1 [I,RP]
# ISAPI_Rewrite 3.x 版本
RewriteCond %{HTTP:Host} ^www\.guoy\.cn$
RewriteRule (.*) http\://guoy\.cn$1 [NC,R=301]





在ASP文件头加入,可以进行全站调用

<%@ language="VBScript">
<%
  Response.Status="301 Moved Permanently"
  Response.AddHeader "Location","http://www.guoy.cn"
  Response.End
%>


a.com,a.net,www.b.net和www.a.com都是绑在一个站,都要跳转到www.a.com上,用上面代码就成循环跳转了,要进行条件判断,即对主机头不是www.a.com才转向,每个动态文件中都加载这段代码。

IF Request.Url.Host<>"www.a.com" THEN
string newurl="http://www.a.com" & Request.Url.PathAndQuery
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", newurl
END IF





在要重定向的PHP页面顶部加入如下代码

header("HTTP/1.1 301 Moved Permanently");
header("Location:http://www.guoy.cn");
exit();//注意:虽然客户端转向了,但程序还会向下执行,所以要exit
?>






ColdFusion 301 重定向代码

<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.guoy.cn/newpage.html">





在要重定向的CGI Perl页面顶部加入如下代码

$q = new CGI;
print $q->redirect("http://www.guoy.cn");





Ruby on Rails Redirect

def old_action
headers["Status"] = "301 Moved Permanently"
redirect_to " http://www.guoy.cn"
end





在要重定向的JSP页面顶部加入如下代码

<%
    response.setStatus(301);
response.setHeader( "Location", " http://www.guoy.cn" );
response.setHeader( "Connection", "close" );
%>





Nginx 301重定向设置

server {
server_name www.guoy.cn guoy.cn;
if ($host != 'www.guoy.cn' ) {
rewrite ^/(.*)$ http://www.guoy.cn/$1 permanent;
}
}




301在线检测工具:
中文:http://www.ranknow.cn/tools/redirectcheck
英文:http://www.seoconsultants.com/tools/headers



转载自:
http://shuai.be/archives/php-asp-jsp-301-redirection/
http://www.webconfs.com/how-to-redirect-a-webpage.php
http://syntaxhelp.com/ASP/301-redirect
http://www.lao8.org/html/8/2008-4-18/2008418100442.html
http://www.xtgly.com/2010/07/26/iis%E3%80%81apache%E3%80%81nginx%E3%80%81asp%E3%80%81php%E3%80%81dns-301%E9%87%8D%E5%AE%9A%E5%90%91.htm
http://www.96admin.com/2010/0125/221.html
http://www.yunyblog.com/blog/asp/301-html-iis.html
http://farlee.info/archives/isapi-rewrite-iis-301-redirect.html
http://farlee.info/archives/url-forwarding-301-redirect-apache-iis-php-asp-jsp.html#comment-1692
http://www.slyar.com/blog/301-rewrite.html


聚划算