浅谈URL优化该怎么写,如何判断重要性@steven | 绵竹网络公司
转载两篇不错的分享文章,能解决以前一直纠结的问题,对于seoer有不错的指导意义:
来源:站长社区 作者:Zewer
本人从事SEO多年,优化的案例从几千到几十万IP的都有,正规灰色都有,正规站从未主动发过外链。也很不理解为什么非要去做外链。非企业站点来说,单锚本文提升单词效果不大,可能是因为优化的站点原因。我接手的都是比较中大型的网站,不会刻意的去堆砌某个关键字的排名,更不用说去专门做某词的锚文本进行投票了。那么应该如何优化大型站点呢。我觉得重要的因素是架构/结构。跟大家分享首要的架构:url优化。
URL优化的效果跟站点在百度的权重关联性不大,但是对收录、蜘蛛爬行和传递权重有明显的提升。我虽然不常发贴但是经常观察到大部分SEO的提问都是收录怎么怎么不好,权重怎么怎么不高,我也观看过很多站点,很多基础的工作完全都处于迷糊的状态。试想换一种思路,站长变成spider来爬行你的站,我相信大部分站长自己都跑不通。这里我只给出url优化的几个重要点。
1.URL一致性:URL 一致性是一个非常重要的指标,推荐大家一本书《走进搜索引擎》里面有介绍spider是一种机器程序,而非人脑,虽然也有学习的过程,但是国内网站千千万,每个网站有不同的url规范,你如果url命名规则杂乱无章spider又怎能的辨别你的内容规范? 这里举个个人觉得做的比较好的case:“吧”。读者可以去翻阅吧的网站。他的主体结构为:首页=>列表页=>内容页 。这里因地制宜,只是举例可能并不适合你的站点。
吧我分析到他的优化权重承载页为他的内容页。而百度有“偏权重”的说法(见2),所以他把所有的列表页统一用downlist/1~*.html的写法。没有给予列表页过于集权也避免了“偏权重”的影响。 这样子spider可以很自由的识别,只要在downlist目录下面的(数字.html)都属于他的列表页,层次清晰,爬取也很流畅。而他的集权重心在于内容页。内容页统一url为html/1~*.html 通过标签优化和链轮把权重导向给html下面的目录。“偏权重”集中在html目录下。spider也很清晰的可以判断/html目录下面的(数字.html)都属于内页,层次清晰、爬取流畅,权重传递的也很集中,这也属于集权的一种做法。自然收录好权重高了。
Steven批注:这一点同意。
2.偏权重:偏权重可能是我自己创造的一个词,大神们勿喷。通过我多年的分析发现,每个站点的流量是有集中点的。这个从爱站的工具里面大家可以看出来,这里拿我一个客户和朋友的网站给大家做做案例。
同一个网站 90%的流量都出自于某个目录,在这里面内容类型内容质量都是一样的。相信大家在自己作站过程中也有所体会,百度会偏向给权重到某个目录。考虑到这个问题,url一致性和目录规划更重要了。
3.爬行原理:蜘蛛爬行原理有 深度优先和宽度优先这里分开说一下:
(1)深度优先:深度优先适用于一些大站,蜘蛛很渴望得到他的内容,比如新浪网易他们的目录很长,也能收录。假如我们给蜘蛛一个线程只能爬取一个页面,爬行轨迹:首页-封面页-频道页-内容页,那么你网站的结构是:首页=> xxx/a=> xxx/a/b=> xxx/a/b/c/1.html=>。蜘蛛会沿着你的深度爬行进去,但是无论多大的站,你的深度也必须有限,否则蜘蛛不可能无穷尽的挖掘进去,爬累了自然会离开。并且内容也没带回去。
(2)宽度优先:这个是我非常推崇的,而且我所有新站都是这种效果。我自己建了5天的站蜘蛛爬行800次。效果说明在扁平化的,宽度优先是可以让蜘蛛非常的爬行和返回的。url结构 xxx/a/ xxx/b/ xxx/c/ 这类的叫宽度优化,爬行轨迹 :首页-频道页A-频道页B-频道页C/首页-频道页A-内容页A1-内容页A2-内容页A*
综上所述。其实可以看出:宽度优先的效率明显高于深度优先。而且蜘蛛的任务类别也单一,非常容易识别。同一线程爬取的几乎是同一类型页面,页面样式,外观相同。蜘蛛不必花时间过于的去分析你的页面内结构,层次清晰。
4.爬虫黑洞:这个问题不是什么新问题了。百度也有做专门的阐述,因为一些url处理不当产生的动态参数后缀,或是刻意圈住蜘蛛所做的无限循环,这种的效果明显是弊大于利。对URL 的规划上一定要想办法尽可能的处理掉无限动态参数后缀,并且也要合理的给蜘蛛出口,这才是真正有利于SEO 的做法,关于处理爬虫黑洞的办法这里我不做多讲解。大家可以参考站长学院的 《巧用robots避免蜘蛛黑洞》。
官方声明:百度没有“权重”,文章中提及的“权重”字样仅为站长个人观点。
转载第二篇文章:
首先声明,我们只谈论有检索意义的URL,也是用户会从搜索引擎查找的页面。其他页面按照常用的方法做屏蔽好了。鉴于很多站长都爱讨论整体的收录量,我必须泼一下冷水,也许你的有效收录是1/10。
URL参数
也叫URL query,是一个复杂,容易被忽视,容易被妥协的问题。他是网站运营中必不可少的元素,如果简单的去除,其他部门无法工作了。 静态化是的话题,URL参数经常被用于以下几方面: 同一个实体的不同状态展示,比如同一个酒店,在不同时间点会有不同的房间库存:http://www.travel.com/hotel/123/?checkindate=2015-06-09&checkoutdate=2015-06-10 为了统计不同渠道的流量:http://www.a.com/?tracking=website_a 为了统计不同渠道,具体模块的点击量:http://www.a.com/?tracking=website_a&click_spot=zone_abc 调试:http://www.a.com/product/item123/?debug=true 全奇葩的是亚马逊,居然把统计参数放到了路径中http://www.amazon.cn/abc/dp/B005TZHJEQ/ref=lp_2130608051_1_1
出现这种问题的坏处有几点: 1. 浪费搜索引擎对你网站的各项配额,从而影响其他正常的页面。 2. 丢失很多本应拿到的链接加分,站外渠道的链接往往是质的。同一个URL的分值可能分散成几十份。 3. SEO的流量被统计到别的渠道(因为tracking字段写的是别的渠道,而且被收录被点击) 4. 往往形成一种局面,产品用一套URL,SEO用另一套URL, 甚至不同渠道用不同的URL,后期开发和维护的成本极高。
为了解决这个问题,首先要弄清URL的定义。以我的理解,每一个URL是一个静态的、独立不重复的、有意义的实体,一般也有检索意义(是有人会搜)。比如一个人、一辆车、一条道路、一个零件。而不能混入各种”状态”,比如这个人生病的时候,难道不是他自己了么? 一件商品在促销的状态难道是另一件商品了么?
理论上canonical标签可以解决这个问题了, 但是从实际测试结果看,百度对这个标签的支持优先级非常低, 几乎可以忽略不计。那么我的解决方案是这样的: 1. 建立好网站的思维导图和元信息。 (可参考:SEO健康度 ) 2. 所有和SEO元信息相关的参数都放到路径中去 3. 所有和SEO元信息不相干的参数都放到#后边,因为#后边不影响web服务器返回的内容。简单的说是用”#”替代”?”。 4. 每个页面中都利用js获取#后边的参数对,通过二次请求发回给统计服务器 5. 如果#后边的参数影响页面内容,比如酒店的入住日期。那么这部分内容用ajax加载行,他是不稳定的,不属于页面内容的一部分。(当然还有变通的办法,暂不赘述。) 6. 原始的#锚点定义肯定会冲突,定义一个#后边的变量,并用js控制屏幕滚动,来保证原始锚点的作用。
有人可能会想到,根据ua判断,如果是搜索引擎爬虫,用跳转的方式去掉URL参数。但效率的方法必然是从一开始不展示错误URL。那么前面的例子优化后变成了: http://www.travel.com/hotel/123/#checkindate=2015-06-09&checkoutdate=2015-06-10 http://www.a.com/#tracking=website_a http://www.a.com/#tracking=website_a&click_spot=zone_abc http://www.a.com/product/item123/#debug=true
其实很多网站早使用这种方式了,但是还有很多网站由于开发效率无法及时实现。所以对于一般的小网站,一定要考虑开发成本,不要轻易冒进。只要能避免问题的发生,变通的方法是很多的。
Steven批注:#号是很不错的规避方法。
路径中使用非必要元素
很多网站仿照亚马逊的做法,把商品名体现在URL中,然后再通过id来决定页面展示的内容:http://www.amazon.cn/博集典藏馆043•基督山伯爵-亚历山大•仲马/dp/B005TZHJEQ/
这样虽然可以提高一些相关性,但是很危险。在长期甚至短期的时间内,大量商品的名称是非常可能有变化的,那么URL也跟着变化。成本也是非常高的,因为加大了技术实现难度,不管从站内还是站外,每次增加链接都是一个很麻烦的事情。
在我接手艺龙SEO之前,URL被全部改成了这样,对我早期的工作造成了非常巨大的负担:http://www.a.com/Shangrila_International_Hotel-12345678-hotel/
通过日志分析发现基本所有的百度蜘蛛发起的请求都被301跳转了一次(日志分析方法可参考SEO健康度 )。细致调查后发现,从SEO拼接规则到后台的汉字和翻译数据被一直修改。也是说,这个URL相关的元素有: 1. 中文 (非必要元素) 2. 由中文翻译的英文 (非必要元素) 3. id (必要元素)
而当时负责SEO的同事把英文和id拼接在了URL中,那么这样一个URL先后变成过: http://www.a.com/Shangrila_International_Hotel-12345678-hotel/ http://www.a.com/Xianggelila_International_Hotel-12345678-hotel/ http://www.a.com/XiangGeLiLa_International_Hotel-12345678-hotel/ http://www.a.com/Shangrila_guoji_Hotel-12345678-hotel/
跟”相关性”比,URL的性和稳定性更重要。所以针对这个问题,URL的策略应该是:http://www.a.com/hotel/12345678/
如果这个id是隶属于一个分类下的,比如城市,那么可以是:http://www.a.com/hotel/beijing/123/
从技术角度说, id一般是数据库的primary key,可以是数字也可以是字符串,那么这个时候URL是一维的; id也可以是联合的索引,那么URL是二维的,像上面的(bejing,123)缺一不可。电商类网站列表页经常用到三维以上。
Steven批注:这一点可能和谷歌的解释不太一样,待定,不过从长度上来说我同意作者的观点。
大小写
如果网站的技术架构用的是开源系统,一般是不会有这个问题的。如果使用了微软的技术架构,这个问题非常常见:【成都南奇网络】cdnanqi.cn http://www.a.com/newyork/ http://www.a.com/Newyork/ http://www.a.com/NewYork/
我的建议是统一使用小写,大写自动跳转为小写(小心301死循环!)。
Steven批注:这一点OK,当初日报的站这么处理的。
目录的规范
很多网站同时存在这样的URL,无形中把收录量扩大了一倍: http://www.a.com/product/123 http://www.a.com/product/123/ 上边个路径的意思是在product目录下有一个123文件。第二个路径的意思是在product目录下有一个123目录,这个目录下可能有很多文件,但是他代表众多文件中的index.html或index.php或default.aspx等优先级的那个文件。为了避免歧义,我定义文件都是用”.html”结尾的。
为了减少重复收录,那么按我的习惯是: http://www.a.com/product/123 => http://www.a.com/product/123/ http://www.a.com/product/123 => http://www.a.com/product/123.html
Steven批注:同意。
总结
1. 所有部门统一使用SEO定义的URL,屏蔽非SEO URL的入口。 2. 用”#”替代”?” 3. 统一使用小写 4. 保证目录的规范 5. 把不规范的URL跳转到规范的URL
文章虽然结束但是讨论可以继续,大家可以到【学院同学汇】《如何避免大量重复URL被百度收录》讨论帖,与作者刘明进行探讨。
推荐阅读
浅谈URL优化该怎么写,如何判断重要性@steven | 绵竹网络公司 https://cdnanqi.cn/mianzhu/1147.html