2008年5月30日星期五

用ASP或PHP实现两个域名内页之间的301跳转

如果一个网站拥有两个域名:admini5.cn和admini5.com。在网站运营前期,主推admini5.cn,但发展到中期,由于品牌或
产品定位的原因,admini5.cn这个域名不再适合当前情况,要更换成admini5.com。作为SEO,我们肯定推荐使用301跳转,当用户访问
admini5.cn时,自动引导用户进入新域名admini5.com,可以通过程序或域名跳转实现301跳转,这样可以将旧域名PR传递到新域名。但
是如果用户收藏了旧域名的某个内容页(譬如:admini5.cn/content/20070808.html),通过域名跳转直接引导到
admini5.com首页恐怕会产生较差用户体验,特别是对未及时获知域名更换的用户;最好方式是实现通配,动态的将旧域名某个内页跳转到新域名相同页
面的URL,那如何用技术手段实现新旧内页URL之间的301跳转?

即:从admini5.cn/content/20070808.html跳转到 admini5.com/content/20070808.html,并使浏览器返回301代码。



例如:大旗网域名由chinabbs.com换成 daqi.com博客网域名由blogchina.com换成bokee.com有兴趣或者有解决办法的程序员,请留下你的联系方式或者发表评论,一起探讨下关于URL重定向的相关问题。



PHP下的实现方式(参考):.htaccess文件代码如下(admini5.com的.htaccess如此设置):

Options +FollowSymlinksRewriteEngine onrewritecond %{http_host}
^admini5.com [nc]rewriterule ^(.*)$ http://www.admini5.com/$1 [r=301,nc]



注释1:如果用户访问http://admini5.com/,则跳转至http://www.admini5.com,且返回301状态码;当用户访问
http://admini5.com/post/301.htm,则跳转至http:
//www.admini5.com/post/301.htm,并返回301状态码。



注释2:测试URL:http:
//www.admini5.com/,你可以访问http://www.admini5.com/post/301.htm我在admini5.com
下配置了.htaccess文件,使其301跳转至http://www.admini5.com/post/301.htm我的.htaccess
配置实现了由主域名(admini5.com)301跳转至二级域名(www.admini5.com);



结论:

Options +FollowSymlinksRewriteEngine onrewritecond %{http_host}
^www.admini5.cn [nc]rewriterule ^(.*)$ http://www.admini5.com/$1
[r=301,nc]



ASP脚本实现301跳转的方法:



ASP/Visual Basic代码

  1. <%if request.ServerVariables("HTTP_HOST")="admini5.cn" or request.ServerVariables("HTTP_HOST")="www.admini5.cn" Then
  2. if Request.ServerVariables("QUERY_STRING")<>"" Then p="?"
  3. Response.Status="301 Moved Permanently"
  4. Response.AddHeader "Location","http://www.admini5.com"&Request.ServerVariables("SCRIPT_NAME")&p&Request.ServerVariables("QUERY_STRING")
  5. Response.End
  6. end if%>


一、if request.ServerVariables("HTTP_HOST")="admini5.cn" or request.ServerVariables("HTTP_HOST")="www.admini5.cn" Then

当发现客户是用旧域名来访问网站的,则进入转向流程

二、if Request.ServerVariables("QUERY_STRING")<>"" then p="?"

Response.Status="301 Moved Permanently"

当发现页面是含参数的,则加入“?”

发送转向的HTTP状态码301

三、 Response.AddHeader
"Location","http://www.admini5.com"&Request.ServerVariables("SCRIPT_NAME")&p&Request.ServerVariables("QUERY_STRING")

当不含参数时,变量P和REQUEST.ServerVariables都为空

当含有参数时,则生成被请求页的的相对URL。这样就达到了一种效果:无论客户访问哪一页,都会自动转向到另一个页面的同一文件里且包含同一个参数。



举例:www.admini5.cn/go.asp?id=12345会自动301到www.admini5.com/go.asp?id=12345;

www.admini5.cn/xiaoshuo.asp会自动301到www.admini5.com/xiaoshuo.asp


from:http://www.admini5.com/xunlei/show-2-1.html

2008年5月27日星期二

青岛地区GS8100猫自动拨号设置

用的是金浪ADSL 988E+(软件版本GS8100),多机共享上网设置adsl路由猫自动拨号的方法:

2008年5月22日星期四

我虚拟出来的别墅

3Dsmax9 + VRay1.5 RC3

2008年5月12日星期一

矛盾

科技为懒人而造,一旦有因客观因素而无法使用科技产品,不安的情绪瞬间充斥!科技带来了方便,也带来了很多恐怖的事情。

消息的大众化传播,无障碍传递,可以让更多的人得到全面的了解,但是过多的消息也增加了辨别成本。制造混乱,造成浪费!

社会以解决各种矛盾而发展,但是发展的同时带来了更多的矛盾需要解决。