IT技术博客大学习 共学习 共进步

使用apache下的301设置来做域名的更换转移

蒯义刚::网志 2009-10-28 20:44:20 累计浏览 4,825 次

页面永久性移走(301重定向)是一种“自动转向”技术。当您的域名变更后,比如网站以前用的域名是www.xingmo.com.cn,现在要用www.xingmo.cn ,这时就要用到这个技术了。

您可能也会说,我可以用php的header函数,javascript的meta refresh,window.location.href来做转向,但建议不要这么做。这么做可能会被搜索引擎认为是在作弊,从而影响网站排名。

在Apache中,可以用.htaccess来设置并实现301重定向的功能。 

以下是代码片段:
Redirect permanent / http://www.xingmo.cn/ (将根目录下的内容重定向到http://www.xingmo.cn/ )
redirect permanent /index.php http://www.xingmo.cn/index.php?go=category_6(将网页index.php重定向到http://www.xingmo.cn/index.php?go=category_6)


通过合理地配置重定向参数中的正则表达式,可以实现更复杂的匹配。

PHP下的301重定向
 

以下是代码片段:
<? 
Header( "HTTP/1.1 301 Moved Permanently" ) ;
Header( "Location: http://www.xingmo.cn" );
?>

旧域名重定向到新域名

创建一个.htaccess文件,并将下面提供的代码写入文件内,它可以确保旧域名所有的目录或者网页正确的跳转到新域名内。

记住.htaccess文件一定要放在旧网站的根目录下,并且新网站要和旧网站保持相同的目录结构及网页文件

以下是代码片段:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.xingmo.cn/$1 [R=301,L] 

 将这个文件保存为.htaccess放在原www.xingmo.com.cn网站的根目录下。

请将上面的www.xingmo.cn修改成你想要跳转到的域名。
此外,我建议大家归总旧网站的外部链接,并联系相应的站点修改导入链链的URL,以指向新站点。

注意:.htaccess文件只有在使用安装有Mod Rewrite模块的Apache作为WEB服务器的Linux主机上才能起作用

域名301重定向到www的二级域名

创建一个.htaccess文件,并将下面提供的代码写入文件内,它可以确保所有来自对xingmo.cn的请求都转向到对www.xingmo.cn进行请求。记住.htaccess文件一定要放在旧网站的根目录下,并且新网站要和旧网站保持相同的目录结构及网页文件
 

以下是代码片段:
Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^xingmo.cn [nc]
rewriterule ^(.*)$ http://www.xingmo.cn/$1 [r=301,nc] 
 

请将上面的http://www.xingmo.cn/修改成你想要跳转到的域名。

注意:.htaccess文件只有在使用安装有Mod Rewrite模块的Apache作为WEB服务器的Linux主机上才能起作用。

建议继续学习

  1. 如何拿下简短的域名 (累计阅读 16,766)
  2. 使用apache的404设置来转向可能不存在的页面 (累计阅读 8,143)
  3. 域名相关的一些基本概念总结 (累计阅读 7,903)
  4. Apache用mod_rewrite配置子域名 (累计阅读 7,104)
  5. A记录,MX记录,CNAME记录,url转发,ns记录,动态记录 (累计阅读 5,589)
  6. Apache、resin、rewrite泛域名、多域名设置 (累计阅读 5,046)
  7. 全站换域名时利用nginx和javascript做简单友好的换域名跳转通知 (累计阅读 4,885)
  8. 域名DNS相关术语 (累计阅读 4,326)
  9. .htaccess的301跳转 (累计阅读 4,006)
  10. 网址决定内容 (累计阅读 3,644)