URL在搜索结果列表中时显示内容之一。设计网站结构时需要对目录及文件命名系统做事先规划。总的原则是首先从用户体验出发,URL应该清晰友好、方便记忆,然后才考虑URL对排名的影响。具体可以考虑以下几个方面。

1)域名的选择

  注册域名时,域名中能放关键词最好,但不要为了放关键词把域名弄的很长,更不要为了放关键词,注册带有连词符的域名。

  为让域名看得清楚,可以放一个连词符,最多放两个,但是不要为了堆积关键词。如果带有关键词的域名不好找,宁可选择一个容易品牌化的短的生僻词,或者新造的词。

2)描述性

  整个URL包括域名,目录名和文件名,在可能的情况下,用具有描述性的单词,尤其是目录名和文件名。使用户在一瞥之下就能知道这个URL内容大致应该是什么。

  例如 URL http://www.example.com/news/finance/ 就比

  http://www.example.com/cate-01/sub-a/

  要好得多。

3)URL中包含关键词

  在可能的情况下,目录名文件名可以放上一些关键词。关键词出现在URL中,也能提高页面相关性,在排名时贡献一点分数。

  关键词出现得越靠前越好,也就是说出现在域名中最好,其次是出现在目录名中,效果最小的是出现在文件名中,不过切不可为了出现关键词而堆积。

4)URL不可太长

  虽然可以考虑在URL中放关键词,但最好不要为了放关键词,而把目录名文件名弄的很长。

  这主要是为用户着想。对搜索引擎来说,只要URL不超过1000个字母,收录起来都是没问题。不过真的使用几百个字母的URL,用户看起来就费事了。

  曾经有人做过搜索结果点击实验,一个比较短的URL出现在一个比较长的URL下面时,短URL的点击率比长URL高2.5倍。

  另外,短URL也利于传播和复制。站长做链接时,通常会直接复制URL。短URL不会有问题,长URL复制时都会费劲,也可能复制得不完整,造成访问时404错误。  

5)用连词符

  URL中目录名文件名单词之间最好用连词符-,不要用下划线_,也不要用其他允许但很奇怪的字符。连词符会被当作空格处理。

  目录或文件名中单词间一般建议使用短横线(-)分隔,不要使用下划线或其他更奇怪的字母。搜索引擎把URL中的短横线(-)当做空格处理,下划线则被忽略。所以文件名seo-tools.html 将被正确读取出 seo 与 tools 两个单词,而文件名 seotools.html 就不能被分解出两个单词。

6)英文单词和拼音

  对英文网站来说,当然URL中的描述性关键词比较好写。对中文网站可以考虑实使用拼音。但是对比较长的词,用拼音就不容易读懂,这种情况下还是建议使用英文单词。

  另外有的人把目录名文件名里面放上中文字,或者有时候有空格,这样的URL出现在浏览器地址栏的时候,都会变成一些编码字符。虽然搜索引擎可以辨识,但看起来很难看,不建议。

7)大小写

  URL中最好统一全部使用小写字母,像Unix/Linux服务器大小写字母是不同处理的,也就是说 Index.html 和 index.html 是被当作两个不同的文件。如果一个目录下面的首页是Index.html,访问目录的时候就会出错。在其他情况下大小写混用也经常会造成混乱。另外,robots 文件代码也是区分大小写的,一个字母之差就可能使整个目录不能被收录。

8)避免太多参数

  在进行URL优化时,我们尽量使用静态的URL,虽然现代的主流搜索引擎都能够很好的去索引带有参数的动态网页了, 可是,使用静态的URL还是有一定的优势的,如果由于某些原因,不能使用静态的URL,而不得不使用动态的URL时,设计的则是URL中的参数应该尽量减少,不要超过三个,一般的情况下URL中的参数2~3个就可以了。参数太多了不但用户看起来困难,对搜索引擎的索引可能也会造成一定的问题。所以,能使用静态就使用静态的URL,能短就尽量短。

9)目录层次尽量少

  这里所指的目录层次是指物理目录结构,而不是指逻辑结构,我们在网站建设中对URL进行设计时,网站的结构要尽量的去减少目录层次,层次不能太深了,一般建议不要超过三层,特别对于一些新站来说,权重低,搜索引擎蜘蛛爬行得很浅,深一点的页面,蜘蛛都很可能不会去爬行的,所以要尽量的做到使目录层次减少,URL缩短。根据观察,百度尤其比较喜欢目录层次比较少的页面。

10)使用目录形式还是文件形式

  大部分的CMS系统都可以把页面的URL设置为目录或者文件形式。

  比如:http://www.example.com/products/red-shoes/

  或 http://www.example.com/products/red-shoes.html

  有些朋友认为目录形式比文件形式权重要高一点,无论使用哪种形式的URL,权重应该是差不了多少的,基本可以忽略二者之间的权重差异,使用目录形式有一个优点,以后如果更换其他的编程语言,URL也可以不用变化,也不用经过特殊的处理,而文件形式的URL可能文件的扩展名会变化,需要做一定的URL重写处理。

11)二级域名和目录

  二级域名在中文网站里面似乎很流行,而且现在二级域名在Google里面有大量的垃圾内容,Google对此还没有什么好的办法。

  不过我个人还是建议使用目录,除非有特别需要的时候,最好不要使用二级域名。

关于URL优化的一些经验的更多相关文章

  1. SEO 网站URL优化

    很多人都知道URL对SEO的重要之处,但是很多站点却忽略了站点的路径优化.今天本人在这里写几点关于优化路径小篇! 本人结论出关于站点URL在优化中其实也是占为一个相当重要的一个优化!优化站点的URL本 ...

  2. 关于SQL性能优化的十条经验

    1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用. 解决办法: 其实只需要对该脚本略做改进,查询速度便会 ...

  3. HDFS配置参数及优化之实战经验(Linux hdfs)

    HDFS优化之实战经验 Linux系统优化 一.禁止文件系统记录时间 Linux文件系统会记录文件创建.修改和访问操作的时间信息,这在读写操作频繁的应用中将带来不小的性能损失.在挂载文件系统时设置no ...

  4. URL优化的几个处理方法

    原文链接:http://www.51chinashop.com/shopinfo/dsjs/2014-11-23/100.html 在一个网站中,一个页面对应了多个URL,必然会分散这个页面的权重.因 ...

  5. 网站url路径优化方法完全讲解 (url优化、基于tp5、API接口开发)

    url优化可是网站开发的必备高阶技能,先看本实例优化前后效果比较: (同为调用前台模块下的index控制器下的index方法) 优化前:www.tp5.com/tp5/public/index.php ...

  6. MySQL性能优化的最佳经验,随时补充

    1.为查询优化你的查询 大多数的MySQL服务器都开启了查询缓存.这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的.当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存 ...

  7. ThinkPHP的URL优化

    在刚刚安装好tp框架时,我们的路径一般是这样的: http://localhost/index.php/Home/Index/index?name=cly 我们可以通过下面一步步的步骤来优化这个路径 ...

  8. MySQL性能优化的最佳经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  9. mysql优化21条经验(转)

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序 员需要去关注的事情.当我们去设计数据库表结构,对操作数 ...

随机推荐

  1. [hdu4631 Sad Love Story]最近点对,枚举

    题意:S是平面内点的集合,初始为空,每次向集合里面加入一个点P(x,y),询问S内最近点对的距离的平方和 思路:设当前集合的答案为D,则找到集合里面横坐标在(x-√D,x+√D)内的数,用它们来更新答 ...

  2. 浅谈mybatis如何半自动化解耦和ORM实现

    在JAVA发展过程中,涌现出一系列的ORM框架,JPA,Hibernate,Mybatis和Spring jdbc,本系列,将来研究Mybatis. 通过研究mybatis源码,可将mybatis的大 ...

  3. leeCode刷题 1078

    给出第一个词 first 和第二个词 second,考虑在某些文本 text 中可能以 "first second third" 形式出现的情况,其中 second 紧随 firs ...

  4. CODING 敏捷实战系列课第四讲:从头搭建持续集成 DevOps 流水线

    <从头搭建持续集成 DevOps 流水线>由资深敏捷教练.极限编程学院高级讲师.CODING 特邀敏捷顾问李小波老师主讲,将基于 CODING 展示如何编写 Jenkinsfile 搭建 ...

  5. JS理论--正则表达式RegExp的创建、元字符、优先度、方法(test(),exec(),match(),replace())

    实战,参数可以对照上面的,代码一定要敲 var str = 'abc123cba456aaa789'; var reg = /\d+/g; console.log(reg.test(str)) //s ...

  6. Mysql 常用函数(20)- ceiling 函数

    Mysql常用函数的汇总,可看下面系列文章 https://www.cnblogs.com/poloyy/category/1765164.html ceiling 的作用 向上取整,ceil 函数一 ...

  7. Java Concurrent包初探

    同步容器: Vector/Hashtable:jdk1.0就已经存在,jdk1.2改写实现List/Map接口.作为ArrayList/HashMap在并发场景中的替代类出现.注意:Hashtable ...

  8. reids不重启切换rdb到aof

    reids不重启切换rdb到aof

  9. 避免scrollview内部控件输入时被键盘遮挡,监听键盘弹起,配合做滚动

    1,监听键盘 2,根据当前键盘弹起高度与控件的底部位置计算滑动距离 3,根据滑动距离在键盘弹起和隐藏是分别设置动画完成滑动     实现: 1,监听键盘使用   #pragma mark - 键盘监听 ...

  10. MyBatis——Mapped Statements collection does not contain value for XXX

    报错信息: Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql. ...