写在前面
为什么要学SEO? 又不进行商业用途
- WEB开发的时候,你会更加的规范
- 知识上的扩充
- 让过多人看到你的博客站点
一些说明
- 搜索引擎不喜欢flash和js生成的内容
- 跳转用301跳转,其他跳转如JS跳转,302跳转不建议使用
- 建议采用静态URL
- 搜索引擎一般把二级域名当作独立站点看
- meta keywords tag 和 description tag 对排名一般没什么用
- SEO需要付出时间
- SEO最根本的方法还是要提高网站内容质量
- 不要在标题中加入搜索次数高,但与本页面无关的关键词
- pagerank工具条已经不再更新,所以新站的PR值永远是0了
- 域名的年龄也是一个影响排名的因素
网站目标
需要了解网站的目标,如信息类网站靠显示广告赢利,网站目标是尽量增加页面访问数(PV),电子商务网站,以在线销售为目标,电子商务网站希望的是能转化的高质量目标流量,关键词研究的重点在于挑选和优化最相关的、交易类的关键词。
博主博客则主要只是想提高自己的排名,让更多人看到这个站点,交到更多的朋友~
爬取和收录
Robots文件
百度搜索淘宝网,会发现如下:
robots.txt是何方神圣?
搜索引擎访问任何一个网站到时候,都会先访问根目录下robots.txt文件。
robot.txt如果禁止搜索引擎抓取某些文件或目录,爬虫将遵守协议,不抓取被禁止的网址。
如下面的代码将禁止除google外所有搜索抓取任何内容
1 | User-agent: Googlebot |
使用noindex meata robots标签
如果你想禁止某些页面被收录,你可以:
1 | <meta name="robots" content="noindex"> |
noindex 和 robots.txt区别:前者是禁止收录,后者是禁止抓取
nofollow
1 | <a href="URL" rel="nofollow"> |
比如github上个人主页:
nofollow标签用于告诉搜索引擎不要跟踪这个标签。
通常用于博客评论、论坛回帖上。
因为如果你的站点指向了垃圾站点,那么会影响你的网站的排名。而博客、论坛回帖可能有垃圾留言。用了nofollow能阻止搜索引擎的爬行和传递权重。
Nofollow 的另一个用途就是,在写文章并引用某个网站,但是并不想把您的权重传递给它。如揭发垃圾站点的时候。
PS:交换友情链接使用nofollow是无耻的行为。
速度影响抓取
网站来说,当下载页面所用的时间明显上升时,抓取的页面数量就极具下降。因为搜索引擎在一个特定的网站上爬行和抓取的总时间是有限的(除非网站规模小,用不完google给这个网站爬行的总时间)
URL静态化
网页内容一般都是由程序实时生成,而不是在服务器上真的有相应的HTML文件存在。搜索引擎一般不喜欢动态的URL,因为它可能造成大量重复的内容。
比如下面的两个URL,这两个仅仅是参数的不同,却会被认为是两个页面
xxx.com/a.php?color=blue&id=123
xxx.com/a.php?id=123&color=blue
伪静态
一般静态化的方法是用服务器的URL重写模块(如果服务器是apache,那么就是mod_rewrite模块),这种方法叫做伪静态,因为它只是通过URL重写技术来让网址看起来像静态的。但对搜索引擎来说,真正的静态和伪静态没有区别。
wordpress在设置-固定链接可以设置伪静态的URL格式。
也可以通过修改 .htaccess 来自定义URL规则,包括301转向
URL设计
- 使用单词,最好包含关键词,或者描述性的词
- 越短越好,一个短的URL点击率比长的高2.5倍
- 百度尤其喜欢目录层次少的页面
- 不建议使用中文URL,否则会被base64编码,看起来就像乱码一样。
- 词和词之间用 - 隔开
301重定向
什么是301重定向
301重定向是服务器返回给用户/爬虫的HTTP响应报文的头部,说明本网址永久迁移到另一个地址。
其他常见状态码:
- 200 OK
- 202 请求被接受,但处理尚未完成
- 301 redirect 重定向
- 302 临时性转向
- 400 由于语法格式有误,服务器无法理解此请求。 不作修改,客户程序就无法重复此请求。
- 401 未授权
- 403 禁止访问
- 404 页面未找到
- 5XX 服务器出错
为什么用301重定向
- 除了301转向外,搜索引擎对其他的如JS转向,302转向很敏感,因为作弊者常用这些方法。
- 301重定向可以传递权重。B已经永久迁移到A站点,那么B的权重将累计到A
一些说明
- 百度对301转向反应很慢。
- 可以用.hataccess 进行301重定向
重复内容的危害
产生重复内容的原因
主要有:
URL规范化没做好,如把404的重定向到首页(搜索引擎人为有大量和首页一样的页面)
被人转载和抄袭
镜像网站
- 如七牛CDN的话,强烈建议用robot.txt禁止抓取
危害
搜索引擎会从多个页面中尽量挑选出真正原创的版本,或者用户体验最好的版本,给予应有的排名,而其他复制的版本不再搜索结果中或者排在比较后面的位置。但搜索引擎来判断可能把本来是原创的页面判断成转载的内容,这使得原创内容排名不好,像被“惩罚”了一样。
消除复制内容
同站下的复制内容如果是URL问题找出解决即可。下面只说明防止被复制和转载。
有的转载会表明出处,但是有的就不会。
可以加入版权信息:
1 | echo ‘本博客若无特殊说明则由 <a href=”‘.get_site_url().'” title=”‘. get_the_author().'”>’. get_the_author() .'</a> 原创发布<br/>’; |
这样对于直接复制的网址(一般也是用爬虫抓取)就直接把这些版权信息抓过去了。对于搜索引擎来说,指向原处的链接是判断原创的最重要的信号。
站点地图
sitemap和 Sitemap
前者是html版本的,后者是XML版本的,就差了首字母大写。站点地图有助于用户对网站结构的了解,搜索引擎可以更容易地去发现并抓取网站上的内容。
XML只是辅助的方法,它只是通知搜索引擎这些页面的存在,并不一定被收录,所以良好的网页结构是更重要滴。
wordpress可以用 Yoast SEO插件来生成XML站点地图。
robots.txt 中 sitemap
所有主流搜索引擎都支持robot.txt中指定网站站点地图的位置。
1 | Sitemap: https://www.hrwhisper.me/post-sitemap.xml |
参考 (http://www.sitemaps.org/protocol.html#submit_robots)>
在站长工具提交站点地图
先注册账号-验证网站所有权-上传Sitemaps(有的可能需要申请,如搜狗)
页面优化
- 建议title紧接在
<head>
后,这样搜索引擎就可以快速找到title标签 - 可以使用google 站长工具 搜索外观-HTML建议部分查看需要改进的地方
- 为每个网页创建独特的标题标签,如分页中可以在标题前加入第X页来区别,如第二页-标题 第三天页-标题
- 描述标签对关键词排名没有影响,但对点击率有一定的影响。(因为可能被拿来做搜索页的摘要)
- 关键词标签现在没卵用,不建议浪费时间写
正文优化
wordpress 插件YOAST SEO 在编辑文章的时候会给出优化建议
篇幅不大的页面出现两三次关键词即可,长的出现4~6次,不要堆积关键词。
正文前50~100个词中有较高的权重
要关注关键词的变化形式,如近义词
合理利用图片ALT文字
- 最好文件名和 alt 文本是简短而描述性很强
- 当图片作为链接使用时,一定要提供 alt 文本(切忌过长)
合理使用H标签使得文章层次分明
自然写作,其实优化就差不多了,只要有意识的想一下近义词即可。
W3C验证
一般同不通过对页面排名没有明显的影响。实际上绝大部分页面都无法百分百的通过W3C验证。搜索引擎也明白这一点。
所以,尽量更正验证报告中的错误,警告可以忽略。
W3C验证地址: https://validator.w3.org/
ps:博主blog除了个别多说评论页面有表情的提示无alt属性没通过验证外,其他的均通过W3C验证。
链接建设
锚文字
先介绍基本概念,锚文字。
1 | <a href="https://www.hrwhisper.me/" >细语呢喃</a> |
这里的“细语呢喃”就是锚文字。
内部链接
选择描述性文字——您选择的用作链接的锚文本应该至少能够提供被链接页面 的基本信息。
避免如下情况:
- 使用与目标页面主题无关的锚文字,比如“页面”、“文章”或是“点击这里”
- 直接使用页面的 URL 作为锚文本(只有少数情况下,这样的方法是 合适的,比如推广或者是引用了某个网址)
- 用一个长句子或是一篇短文来实现的过长的锚文本
外部链接
外部链接使得被链接的页面及整个域名权重提高,外部链接越多,发出链接的网站本身权重越高,说明链接的页面受更多人信任,该域名就有更多的权重。
权重和信任度与特定关键词或主题没有直接关系。如果你的网站有来自央视、百度、清华大学、华尔街日报这种权重极高网站的链接,你的网站的权重会有质的提升,不管网站目标关键词是什么,排名都会有帮助。
- 外部链接也可以叫做反向链接
- 质量比数量更重要
- 总域名数比总链接数的作用更大
- 来自相关内容的链接网站对排名的帮助更大
- 反向链接增加的速度不宜过快
- 来自edu、gov域名的权重高
- 开放目录。将网站提交到高质量的目录上,能带来不错的外部链接
我觉得好的链接应该是对方站长编辑的行为,比如他认为你的博文有用,在他的文章正文中进行引用,这才是真正的投票。而友情链接带来的权重低很多。
吸引外部链接的几种途径
- 自己的网站
- 博客论坛留言
- 百科和问答类网站
- 网摘书签 如(delicious.com QQ书签 百度搜藏 Google书签) 现在大部分由nofollow
- 查看别人的外部链接
- CMS主题模板 (如wordpress主题)
- 社会化媒体网站(如豆瓣、知乎、新浪微博 ,大部分由nofollow)
SEO效果监测
主要监测下面三项,看看优化后是否有效果
- 收录数
- 外链数
- 关键词的排名
SEO作弊及惩罚
白帽、黑帽、灰帽
- 黑帽(Blackhat):作弊方式的SEO方法,不符合搜索引擎质量规范
- 白帽(Whitehat):符合搜索引擎网站质量规范的SEO
- 灰帽SEO(Greyhat):介于白帽和黑帽之间的优化方法
黑帽的手法
黑帽SEO迟早被搜索引擎惩罚,不要使用这种方法。
黑帽包括如下:
- 隐藏文字: 如和背景颜色相近或相同的文字,来堆积关键词
- 隐藏页面:用户和搜索引擎看到的不是一个页面,搜索引擎看到的是一个高度优化、常常优化到没有可读性的页面。
- 隐藏链接:如黑入其他网站,加入自己网站的链接
- 垃圾链接:如博客评论里锚链接使用商品名称作为关键词。 =>Akismet插件
- 买卖链接:搜索引擎明确十分痛恨这种行为,一旦被查到。。。
- 链接农场/大规模站群:一个站长有一群网站,这些网站互相交叉链接。或者用这些网站共同推一个主网站
- 链接到坏邻居:自己的网站链接到被判断出作弊并被惩罚的网站,可能被牵连。
搜索引擎的惩罚方式
- 惩罚主要的关键词
- 所有的关键词排名全面下降
- PR值下降
- 负6惩罚,负30,负950(排名下降的固定名次)
- 如果一个IP地址上的大部分网站都被惩罚,那么这个IP地址或整个服务器可能被牵连(虽然比较少见),所以独立IP比共享IP好。
Google和百度的区别
- Google很容易收录新网站和新页面,不过Google有沙盒效应,收录门槛很低,获得好的排名比较难。百度对于新网站考核期长,不容易被收录。而一旦被收录,比较容易获得排名和流量。网站刚开始时的原创性对百度来说比较重要。
- 百度有比较大的首页优势,而Google对所有页面一视同仁,不管是首页还是内页。
- Google对外部链接比较重视。对关键词反而没有那么敏感。百度相反。
- 百度排名经常有大起大落。而Google对网站的排名处理总是渐进式的。
- 百度对网站更新比较看重。google除非是有时效性的网站外,没有多大要求。
- Google现在会读取、解析js和css文件,渲染出和用户看到的一样的页面内容和布局。
移动适配
可以简历专用的和PC版不一样的URL,但还是推荐响应式设计(也叫自适应设计 responsive design)。
- wordpress_如果主题没有响应式,可以安装 wptouch
移动自适应站百度建议加上以下标志,帮助百度理解页面适用于PC和手机
1 | <meta name="applicable-device"content="pc,mobile"> |
参考资料
Google Search Engine Optimization Starter Guide
- 汉化版 :http://pan.baidu.com/s/1c0NvJuo 密码:miix
《SEO 实战密码 第3版》 Zac
- 很详细,虽然有些现在过时的内容。
可以看 本博客的SEO实战记录