这里我要解决两问题:
1、将timmy.min-min.com/***的访问都转向imtimmy.com/*** 。
2、将www.imtmmy.com/***的访问都转向imtimmy.com/*** (前面说了,越短越好嘛)。
为解决问题1,我需要在老域名timmy.min-min.com的根目录的.htaccess里填入以下代码:
RewriteEngine on
RewriteRule ^(.*)$ http://imtimmy/$1 [L,R=301]
为解决问题2,我需要在新域名imtimmy.com的根目录的.htaccess里填入:
RewriteEngine on
rewritecond %{http_host} ^www.imtimmy.com [nc]
rewriterule ^(.*)$ http://imtimmy.com/$1 [R=301,nc]
具体的规则可以自己google “.htaccess文件语法”。
下面再附上一些常用的301转向规则:
1、ASP下的301转向代码
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “http://imtimmy.com/”
%>
2、ASP.Net下的301转向代码
3、PHP下的301转向代码
header(”Location: http://imtimmy.com/”);
exit();
4、CGI Perl下的301转向代码
print $q->redirect(”http://imtimmy.com/”);
5、JSP下的301转向代码
response.setStatus(301);
response.setHeader( “Location”, “http://imtimmy.com/” );
response.setHeader( “Connection”, “close” );
%>
6、Apache下301转向代码
新建.htaccess文件,输入下列内容(需要开启mod_rewrite):
1)将不带WWW的域名转向到带WWW的域名下
RewriteEngine on
RewriteCond %{HTTP_HOST} ^imtimmy.com [NC]
RewriteRule ^(.*)$ http://www.imtimmy.com/$1 [L,R=301]
2)将不带WWW的域名转向到带WWW的域名下
RewriteEngine on
rewritecond %{http_host} ^www.imtimmy.com [nc]
rewriterule ^(.*)$ http://imtimmy.com/$1 [R=301,nc]
3)重定向到新域名
RewriteEngine on
RewriteRule ^(.*)$ http://imtimmy.com/$1 [L,R=301]
4)使用正则进行301转向,实现伪静态
RewriteEngine on
RewriteRule ^news-(.+).html$ news.php?id=$1
将news.php?id=123这样的地址转向到news-123.html
转载自Timmy's Blog
有话要说