深入了解SEO

      为什么要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是一门长期研究的技术。

 

转载于:https://www.cnblogs.com/Sroot/p/5798284.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/403208.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

el-table表格fixed=“right“后表格错乱;Safari浏览器el-table表格错乱;Safari浏览器样式需改无效;

场景&#xff1a;el-table表格操作列右固定fixed“right”&#xff0c;导致表格错乱。其实是由于某行的字体太多&#xff0c;所导致操作列高度错乱。 至于Safari浏览器样式修改无效的问题&#xff1a;每次修改代码后&#xff0c;Safari浏览器项目刷新无变化&#xff0c;必须每次…

从零开始学习Node.js例子七 发送HTTP客户端请求并显示响应结果

From: http://www.cnblogs.com/EricaMIN1987_IT/p/3654233.html wget.js&#xff1a;发送HTTP客户端请求并显示响应的各种结果 options对象描述了将要发出的请求。 data事件在数据到达时被触发&#xff0c;error事件在发生错误时被触发。 HTTP请求中的数据格式通过MIME协议来声…

el-select 结合 el-checkBox 实现下拉全选+多选功能;el-select下拉框全选功能;

原文链接 el-select选择框也有多选功能&#xff0c;但是没有全选。故需要改造一下&#xff0c;el-select 结合 el-checkBox 实现下拉全选多选功能。 代码如下&#xff0c;可直接复制使用&#xff1a; <!--* Description: el-select 结合 el-checkBox 实现下拉全选多选功能 …

JS类似Java String.format的函数

From: http://chenzenghua.iteye.com/blog/1770791Js代码 String.prototype.format String.prototype.f function () { var s this, i arguments.length; while (i--) { s s.replace(new RegExp(\\{ i \\}, gm), arguments[i]); …

pointer-events: none;属性。pointer-events: none;看得见摸不着,点击穿透。

pointer-events: none;理解&#xff1a;你可以看的到某个元素&#xff0c;但是你无法摸的着&#xff0c;点击不到&#xff0c;点击会穿透触发到下层的元素 display&#xff1a;none; 是你摸不着&#xff0c;但是你也看不见。 最简单的使用场景是&#xff1a;给某个box1盒子设置…

axios上传文件;el-upload上传图片和post接口上传file文件;前端给后端接口上传file文件。通过formData给接口传递file文件

本文使用element-ui的el-upload图片上传功能。上传链接 接口参数&#xff1a; <el-uploadaction"https://jsonplaceholder.typicode.com/posts/"list-type"picture-card":on-success"handleAvatarSuccess":on-preview"handlePictureCar…

2、Eternal框架-svn_有更新!

2019独角兽企业重金招聘Python工程师标准>>> 我在code.google.com上建立了eternal项目。 下载地址为&#xff1a;http://code.google.com/p/eternal-mvc/downloads/list 包含了示例war包和源代码。 转载于:https://my.oschina.net/eternal/blog/100233

前端下载图片、pdf、excel、world文件;前端下载图片和pdf文件;前端a标签下载图片和pdf文件;下载文件名称不生效原因。

参考文章1 参考文章2 以下的下载是&#xff0c;拿到了后端给的下载图片的接口地址url > 方法1&#xff1a;将文本或者JS字符串通过 Blob 转换成二进制下载 优点&#xff1a;可以下载&#xff0c;也可以保存名称。 //文件流参数和图片名称 function downloadTxt(str, filenam…

Redis安装和使用指南

From: http://mwt198668.blog.163.com/blog/static/48803692201132141755962/ Redis安装指南 作者&#xff1a;Red_Ant 时间&#xff1a;2011-04-20 简 介 redis是一个key-value存储系统。和Memcached类似&#xff0c;它支持存储的value类型相对更多&#xff0c;包括string…

员工打卡课后小项目

public class Fm{//员工类public string Id { get; set; }public string Name { get; set; }public int Age { get; set; }public string Gender { get; set; }} public class SI{//打卡类public string Name { get; set; }public DateTime Begin { get; set; }public DateTime…

通过后端接口,预览文件流图片;预览和下载文件流

后端接口返回的是文件流 1.如果是pdf等文件&#xff0c;通过iframe结合文件流&#xff0c;做到文件的下载和预览 // 预览文件openPdf1 () {// 后端下载文件流的地址接口let url G_CGI_PHP.group.documentDownload ?id this.paymentImage1const newWindow window.open()ne…

DatePicker动态设置picker-options 中的disabledDate属性操作;

一、场景&#xff1a; 有两个时间选择器A和B。A的时间任意选&#xff0c;B的时间必须选择A之后的时间。此时就需要给B设置可选时间区间&#xff0c;而且是动态的值&#xff0c;既动态设置picker-options 中的disabledDate。 二、代码片段 html&#xff1a; <el-col :span&…

[转]序列化悍将Protobuf-Net,入门动手实录

最近在研究web api 2&#xff0c;看了一篇文章&#xff0c;讲解如何提升性能的&#xff0c; 在序列化速度的跑分中&#xff0c;Protobuf一骑绝尘&#xff0c;序列化速度快&#xff0c;性能强&#xff0c;体积小&#xff0c;所以打算了解下这个利器 1&#xff1a;安装篇 谷歌官方…

Linux 内核打印级别

printk的打印级别 #define KERN_EMERG "<0>" /* system is unusable */ #define KERN_ALERT "<1>" /* action must be taken immediately */ #define KERN_CRIT "<2>" /* critical conditions */ #define KERN_ERR "…

C# 文件操作详解(三)---------Directory类

前面两篇介绍了File类和FileInfo类&#xff0c;对于文件的操作基本够用&#xff0c;但是后面还会补充一下FileStream相关的操作&#xff0c;例如StreamReader和StreamWriter的内容。本文主要介绍Directory类的使用&#xff0c;让我们一起看一下Directory类为我们提供了哪些操作…

Libusb开发教程一 安装

1. 从官网下载需要使用的离线资源包&#xff1a; 进入 libusb.info 的 Download 页 下载 libusb-1.0.9.tar.bz2 下载 libusb-compat-0.1.4.tar.bz2 2. 实验平台 OS: Ubuntu16.04 Kernel: 4.4.0 3. 安装过程 <1> 拷贝步骤一中的离线包到 Linux 系统目录&#xff0c;一般…

WIN10解包分区和磁盘分区教程

From: https://thinkpad.bbs.taobao.com/detail.html?postId5390151 新机到手第一件事情就是要系统解包和磁盘分区。建议在安装和卸载软件之前&#xff0c;进行磁盘分区&#xff0c;不然有可能只能分出原空间的50%&#xff0c;想要分更多空间&#xff0c;只能还原系统了。 一、…

element自定义图标;element自定义icon;element-ui自定义tab栏图标;

一、场景&#xff1a;element-ui本身提供了图标&#xff0c;但是不全面或者开发时候需要使用自定义图标展示。此时可以用到elemenUi的自定义图标。参考链接 二、html使用&#xff0c;和正常的element的 图标 i 标签使用一样&#xff0c;使用设置的类名class即可&#xff1a; &…

canvas文字居中;canvas画布文字右对齐;canvas画布文字左对齐;canvas文字自动换行;canvas设置行间距;

canvas参考手册 场景&#xff1a;画布绘制文本&#xff0c;使用 context.fillText(text,x,y,maxWidth)。文本对其也就是设置xy坐标问题。 以下的画布设定宽度假设都是width&#xff1a;500 一、canvas文本左对齐&#xff1a; 就是x轴设置为0即可。 var cdocument.getElementBy…

与朱元思书

风烟俱净&#xff0c;天山共色。从流飘荡&#xff0c;任意东西。自富阳至桐庐一百许里&#xff0c;奇山异水&#xff0c;天下独绝。 水皆缥碧&#xff0c;千丈见底。游鱼细石&#xff0c;直视无碍。急湍甚箭&#xff0c;猛浪若奔。 夹岸高山&#xff0c;皆生寒树&#xff0c;负…