网站的网址结构应尽可能简单些。建议您组织一下内容,使网址结构合乎逻辑并易于人们理解。
尽可能在网址中使用易读的字词,而非冗长的 ID 编号。
建议:在网址中使用简单、说明性字词:
https://en.wikipedia.org/wiki/Aviation
建议:在网址中使用已本地化的字词(如果适用)。
https://www.example.com/lebensmittel/pfefferminz
建议:根据需要使用 UTF-8 编码。例如,以下示例对网址中的阿拉伯语字符使用 UTF-8 编码:
https://www.example.com/%D9%86%D8%B9%D9%86%D8%A7%D8%B9/%D8%A8%D9%82%D8%A7%D9%84%D8%A9
以下示例对网址中的中文字符使用 UTF-8 编码:
example.com/%E6%9D%82%E8%B4%A7/%E8%96%84%E8%8D%B7
以下示例对网址中的变音字符使用 UTF-8 编码:
https://www.example.com/gem%C3%BCse
以下示例对网址中的表情符号使用 UTF-8 编码:
example.com/%F0%9F%A6%99%E2%9C%A8
不建议:在网址中使用非 ASCII 字符:
https://www.example.com/نعناع
https://www.example.com/杂货/薄荷
https://www.example.com/gemüse
https://www.example.com/?✨
不建议:在网址中使用不易读的、冗长的 ID 编号:
https://www.example.com/index.php?id_sezione=360&sid=3a5ebc944f41daa6f849f730f1
如果您的网站是多区域网站,请考虑使用一种便于对您的网站进行地理位置定位的网址结构。如要查看更多示例,了解如何处理网址结构,请参阅使用基于语言区域的网址。
建议:采用特定国家/地区网域:
example.de
建议:搭配 gTLD 采用特定国家/地区子目录:
example.com/de/
不妨考虑在网址中使用连字符。这样有助于用户和搜索引擎更轻松地了解网址中的关键字。建议您在网址中使用连字符 (-
),而不要使用下划线 (_
)。
建议:使用连字符 (-
):
https://www.example.com/summer-clothing/filter?color-profile=dark-grey
不建议:使用下划线 (_
):
https://www.example.com/summer_clothing/filter?color_profile=dark_grey
不建议:将网址中的关键字连接在一起。
https://www.example.com/greendress
过于复杂的网址,特别是那些包含多个参数的网址,可能会给抓取工具带来麻烦,因为它们可能会产生大量不必要的网址,全都指向您网站上相同或相似的内容。Googlebot 可能会因此而消耗大量不必要的带宽,也可能无法将网站上的所有内容完整编入索引。
此问题的常见原因
导致网址过多的原因有多种,其中包括:
- 累加过滤一组项目。很多网站对同一组项目或搜索结果提供不同的视图,通常让用户能够使用定义好的条件对其进行过滤(例如:显示海景酒店)。当过滤条件可以按累加模式组合时(例如:海景酒店,同时带有健身中心),网站中网址(数据视图)的数量就会急剧增加。因为 Googlebot 只需查看少量能用来访问各个酒店网页的列表即可,所以没有必要创建大量只有细微差异的酒店列表。例如:
- “特价”酒店:
https://www.example.com/hotel-search-results.jsp?Ne=292&N=461
- “特价”海景酒店:
https://www.example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240
- 带健身中心的“特价”海景酒店:
https://www.example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240+4294967270
- “特价”酒店:
- 动态生成文档。由于计数器、时间戳或广告影响,这可能会产生小幅的变化。
- 网址中的参数有问题。例如,会话 ID 可以产生大量的重复项目和更多的网址。
- 排序参数。某些大型购物网站会提供多种方式来排序相同的商品,因而造成网址数量大增。例如:
https://www.example.com/results?search_type=search_videos&search_query=tpb&search_sort=relevance&search_category=25
- 网址中存在不相关的参数,例如引荐参数。例如:
https://www.example.com/search/noheaders?click=6EE2BF1AF6A3D705D5561B7C3564D9C2&clickPage=OPD+Product+Page&cat=79
https://www.example.com/discuss/showthread.php?referrerid=249406&threadid=535913
https://www.example.com/products/products.asp?N=200063&Ne=500955&ref=foo%2Cbar&Cn=Accessories.
- 日历问题。动态生成的日历可能会生成指向未来及过去日期的链接,而这些日期没有开始或结束期限。例如:
https://www.example.com/calendar.php?d=13&m=8&y=2011
- 损坏的相对链接。损坏的相对链接往往会导致无限循环。这个问题通常是由路径元素重复造成的。例如:
https://www.example.com/index.shtml/discuss/category/school/061121/html/interview/category/health/070223/html/category/business/070302/html/category/community/070413/html/FAQ.htm
解决此问题
若要避免网址结构可能导致的问题,建议您采取以下措施:
- 考虑使用 robots.txt 文件阻止 Googlebot 访问有问题的网址。一般情况下考虑阻止动态网址,例如会生成搜索结果或无限空间(如日历)的网址。在 robots.txt 文件中使用正则表达式可以轻松地拦截大量网址。
- 尽可能避免在网址中使用会话 ID,而应考虑使用 Cookie。
- 删去不必要的参数,尽可能缩短网址。
- 如果您的网站具有未设置期限的日历,请为指向动态创建的未来日历页的链接添加
nofollow
属性。 - 检查网站是否有损坏的相对链接。
还没有评论呢,快来抢沙发~