Admin5相信大家都很熟悉,从我第一次上A5的时候我就看见A5没有做301,也就是不带www的301到带www上面。比如现在A5打入admin5.com就出来这个域名,如果我们再这个域名下面点击文章,那么所有此站点的文章都是没有www的超链接。那么诸如A5这样的大站,如何才能以最小的改动就能改动整个网站呢?
一、不做301的严重性;
网站如果不做好301,就有很多麻烦事,比如像A5这样的有四个地址指向同一篇文章,看下面实例:
http://www.admin5.com/plus/view.php?aid=371620
http://admin5.com/plus/view.php?aid=371620
http://www.admin5.com/article/20110827/371620.shtml
http://admin5.com/article/20110827/371620.shtml
上面的四个地址都指向我之前的一篇投稿,引发的后果相信大家都知道,我看过站长网的rooibos有屏蔽plus文件夹的做法,但是rooibos是一个协议不是规定,同样有实例:http://www.baidu.com/s?tn=baiduhome_pg&bs=www.admin5.com%2Fplus%2Fview.php%3Faid%3D&f=8&rsv_bp=1&wd=%CD%F5%D3%C0%CD%A8%A3%BA%C9%EE%B6%C8%B7%D6%CE%F6%B4%B4%D2%DA%CD%F8SEO%B2%DF%C2%D4%A3%A8%D2%BB%A3%A9+&n=2&inputT=703 这个文章不是我的,我随便百度搜索出来的,快照是8月19号。从另外一个方面证明了rooibos是一个协议,所以301的重要性就体现了出来。
二、做好首页301;
< ? Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.admin5.com" );? >
这串代码是php的301代码,可以插入到index.php的头部,但是这样会有附带问题,比如我们的服务器配置了默认文件为html、htm或者shtml,那么先打开的就是index.html,php文件就会被被忽略而起不到效果,如果我们服务器配置默认打开php,为了搜索引擎的友好性,我们又想每次打开html,所以必须301跳转到http://www.admin5.com/index.html,那么这样又爆发出了新问题,就是每次打开的是一个index.html的文件,而不是网站的根目录。其实我们可以把生成的html文件直接改个后缀名,改成php就可以,那个php文件其实是不调用任何数据库的静态页面,从搜索角度讲,只要不带?号的文件都可以说是静态文件。所以,这里只要服务器的默认打开php就可以,如果是服务器的请看下面(当然A5肯定是服务器的),这一段是写给有跟A5类似情况的虚拟主机用户。
三、首页做好了,人家直接内页进来怎么办;
如果用户直接点击了不带www的内页进来怎么办,这个就需要全站的301,那么不带www的是shtml的文件,shtml是不支持301的,javascript?这是客户端语言,如何301?所以又衍生出了新问题,这时候就必须配置服务器了,修改httpd.ini,由于无法知道服务器类型,这里也没办法写下去了,但是可以提供思路,上面看的地址都有共通性,有一个371602是一样的,这个就是文章的id号,生成的文件夹就是当天的日期,然后把动态的和不带www的都301到www的那个地址上,这个规则应该不难写。
四、做好301还要做哪些工作,使之更完美;
做好301之后,或者只做了首页301的朋友,如何让用户和搜索引擎每次都只打开www的文件呢?这个只是算一个收尾工作,我们只要修改模板文件把/xxx和../plus/xxx,把第一个/前面加上http://www.admin5.com这个绝对地址,相同的也要写入Include文件里面。这样就算只做了首页301的用户,用户和搜索引擎也无法被导入到不带www的地方去了。
301其实挺简单的,半个月之前我确信阿里妈妈是没有的,现在也做了301,相比站长网chinaz就做得比较好,一直有的。也不是说A5不好,毕竟一个大网站不是每天就这么点事,我旨在让A5做得更好更专业。文章铭睿原创,转载请保留http://www.xmztd.com,谢谢大家,如有不全面的地方还请指教。
责任编辑:陈龙 作者 铭睿 的个人空