为什么要SEO,SEO的作用是什么?SEO(Search Engine Optimization)是为了让自己的IT产品优先能被搜索引擎找到,通过搜索引擎搜索推荐给网民浏览(特点就是精准找到用户群体)。正所谓,有用户就有钱。大多数的网民都是通过搜索引擎来浏览网站,所以,网站的推广全靠SEO。
作为程序员,有必要求了解SEO吗?SEO不是应该由SEO专员去做吗?没错,确实是由SEO专员去做,但是,SEO专员会技术上的SEO,显然不会。所以程序员也必须要懂一些SEO技术。当然啦,了解SEO对程序员开发也是很有帮助,让程序员知道web应用应该如何架构,如何更好开发符合网民的需求的web应用。
以下是总结整理的SEO方法:
标题与内容相关性
搜索引擎一般是抓取网页里面一些关键字,然后显示在搜索引擎页面的字条上面。如图:
这是搜索引擎显示网站的网页标题与内容。
点进网页,查看源码。
网页的标题
网页的内容标题
网页的内容
说明了SEO优化中,网页的标题、内容标题与内容需要出现相同的关键字,最好保持一致性,切忌含糊不清,标题与内容不相符,如一些夸张的标题(本人痛恨标题党,下载的小电影居然是葫芦娃)。
PS:页面中的标题加粗,斜体,字体颜色会对搜索引擎更加友好,提高网站的收录率。定下来之后不要随便修改标题内容。
内容排版
我们一般的阅读习惯是由上到下,从左到右。(废话,但也有特例),所以一般来说,内容应该是靠左边的。
可以通过SEO Browser来查看网页搜录状态
PS:不要出现一些“未命名”,“aaa”的命名字眼。
网站的目录结构
不仅开发的时候需要分类目录,也需要SEO也是需要分类目录的。(即把image就放到image目录,js就放到js目录)目录分层不宜过多,尽可能控制到3-5层之间,并且注意命名,不要随便起文件名,如abc1.html,no.html。尽可能起与网页内容相关的名字。
一定要有自定义的错误页面
站点要写一个自定义的错误页面,作用就是不仅引导用户浏览自己的网站,而且要引导搜索引擎抓取网站数据,不写404错误页面的话,也会阻碍搜索引擎的收录。
友情链接
控制友情链接的质量与数量,反向链接数量多会提高本站的排名。(主要是质量,可以提高知名度)
PS:友情链接一定要新建窗口,原因就是避免打开覆盖自己的网站,丢失网页流量。
记得在链接加上rel=nofollow属性。
利用社交平台留下网站地址(如:知乎,QQ,微信)
积极参加问答平台,回答一些与自己网站关的内容,或者建立百科词条,宣传自己的网站。
使用https协议(http2协议)
使用https协议的网站提高了网站的安全性,避免运营商的劫持,保证SEO不受运营商劫持影响。(劫持的话会使网页重定向,跳到其他网站去)
使用数字证书(CA)
使用数字证书,提高网站的权威性与安全性。(有条件下就使用数字证书)
添加app mainfest配置
<link rel="manifest" href="/manifest.json">
一份网站清单,利于移动端生成桌面图标链接。(实验性的seo手段)
设置meta属性
<meta name="description" content="" />,
<meta name="keywords" content="" />,
<meta name="robots" content="all" />,
<meta property="og:XXXX" content="" />(同意你的网页在sns网站引用推广)
更多meta属性请参考w3c文档,各大搜索引擎的meta属性
添加alt属性与title属性
这种做法利于图片SEO,(即在百度图片搜索的时候,会找到自己网站上的图片,通过点击图片链接跳转到自己网站)
页面避免过多js代码
搜索引擎对javascript是非常不友好的,所以有些界面特效能用css去实现就使用css去实现,避免过多javascript代码。这是为什么js放在html底部的另一个原因。
创建sitemap
生成一个网页的路径的地图,让搜索引擎了解站点的网页路径。(类似于公园的平面地图)
创建robots.txt
生成一个robots协议文件,让搜索引擎能抓取什么样的页面,不能抓取什么样的页面。
使用一些站长工具(如:谷歌分析)
根据数据分析出如何精准寻求目标用户,查看网站排名情况,防盗链。
内容要以原创为主
降低网站页面的相似度(搜索引擎也不喜欢),转载需谨慎(有法律与金钱风险)。
不要把文字图片化(把文字做成图片)
搜索引擎不会光凭title属性或者alt属性来抓取网页的内容,所以不要把文字图片化。(更重要是影响用户体验)
主动提交网页到各大搜索引擎
主动提交网站,也是SEO不可缺少的一个步骤。
网页禁止空链接
空链接会导致搜索引擎无法抓取对应的页面,从而影响收录。
网页使用绝对链接
避免搜索引擎泛指解析路径,误认为重复内容而降权。
关键字选取
了解网页核心关键字、拓展关键字,长尾关键字。(偶尔使用一下错别字关键字)
网页域名的选取
域名选取也是影响的SEO,切忌不要选取一些(如:www.smiqwjsq.com)毫无意义的域名,域名选取尽可能有意义的。
显示日期
及时更新底部版权时间,文章内容显示时间,保持页面内容最新。(搜索引擎会根据时间抓取网页数据)
网站需要301重定向
防止网页改版后或者网址变动而减少网页权重,利于传递、继承网页权重。
PS:使用短链接来进行重定向,避免泛域名解析(如:qaz.com与www.qaz.com),不要使用302重定向。
生成RSS订阅源
有利于为用户提供实时订阅的功能。因为rss是一个xml文件,方便第三方抓取网站内容。(加快搜索引擎对网站的收录)
避免使用flash动画当首页过渡动画
搜索引擎是不会通过flash动画找到网站首页的。(如需要动画,请使用css3或者canvas动画来代替flash动画)
避免强制登陆才能浏览页面
搜索引擎是不会抓取一些不公开的页面。(普通用户都无法直接浏览,何况搜索引擎呢)
避免使用过多的子域名
搜索引擎是会防止别人使用子域名来加强网站权重。(比如:about.xxx.com等子域名)
页面静态化
搜索引擎一般抓取静态页面数据(url是固定的),不抓取动态页面数据(url是不固定的),所以要通过页面静态化来让搜索引擎收录。
两种方法:一、重写url地址(伪静态)
动态网址 www.xxx.com/xxx.jsp?id=10&class=sprot
分析:不利于seo 速度满,容易注入,拼接字符串。
伪静态网址 www.xxx.com/xxx-10-sprot.html 或者是 www.xxx.com/xxx/xxx
分析:利于seo,不容易注入,无法拼接字符串。
二、生成静态文件(真静态)
通过服务器生成静态文件 html/shtml
html------纯静态html文件
shtml------嵌入ssl指令的html文件(最为普遍)
总结,搜索引擎的算法日益更新,受多种因素影响网站排名,虽然有钱可以买排名(百度可以,谷歌不行),但也不一定都能排第一(事实,除非通过一些特殊手段)。因此,SEO是一门长期研究的技术。