本文主要是介绍你知道SEO中的TDK吗?iframe的作用以及优缺点?从浏览器地址栏输入url到显示页面的步骤由哪些?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
你知道SEO中的TDK吗?
在SEO中,TDK其实就是title
、description
、keywords
这三个标签,title
表示标题标签,description
是描述标签,keywords
是关键词标签。
需要注意的SEO
合理的 title
、description
、keywords
:
搜索对着三项的权重逐个减小, title
值强调重点即可,重要关键词出现不要超过2次, 而且要靠前,不同⻚面 title
要有所不同;
description
把⻚面内容高度概括,⻓度合适,不可过分堆砌关键词,不同⻚description
有所不同;
keywords
列举出重要关键词即可。
语义化的 HTML
代码,符合 W3C
规范: 语义化代码让搜索引擎容易理解网⻚。
重要内容 HTML
代码放在最前: 搜索引擎抓取 HTML
顺序是从上到下, 有的搜索引擎对抓取⻓度有限制,保证重要内容一定会被抓取。
重要内容不要用 js
输出: 爬虫不会执行js
获取内容。
少用 iframe
: 搜索引擎不会抓取 iframe
中的内容。
非装饰性图片必须加 alt
。
提高网站速度: 网站速度是搜索引擎排序的一个重要指标。
iframe的作用以及优缺点?
iframe也称作嵌入式框架,嵌入式框架和框架网页类似,它可以把一个网页的框架和内容嵌入到现有的网页中。
优点:
可以用来处理加载缓慢的内容,比如:广告
缺点:
iframe
会阻塞主页面的Onload
事件 无法被一些搜索引擎识别,搜索引擎的检索程序无法解读这种⻚面,不利于SEO
iframe
和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。但是可以通过javascript
动态给ifame
添加src
属性值来解决这个问题,当然也可以解决iframe
会阻塞主页面的Onload
事件的问题- 会产生很多页面,不易管理 浏览器的后退按钮没有作用
从浏览器地址栏输入url到显示页面的步骤由哪些?
浏览器根据请求的 URL
交给 DNS
域名解析,找到真实 IP
, 向服务器发起请求;
服务器交给后台处理完成后返回数据, 浏览器接收文件 ( HTML、JS、CSS
、图象等); 浏览器对加载到的资源 ( HTML、JS、CSS
等) 进行语法解析,建立相应的内部数据结构( 如HTML
的DOM
);
载入解析到的资源文件 ➔ 渲染页面 ➔ 完成。
1、在浏览器地址栏输入URL
2、浏览器查看缓存, 如果请求资源在缓存中并且新鲜,跳转到转码步骤
- 如果资源未缓存,发起新请求。
- 如果已缓存,检验是否足够新鲜,足够新鲜直接提供给客户端, 否则与服务器进行验证。
- 检验新鲜通常有两个HTTP头进行控制
Expires
和Cache-Control
:
HTTP1.0提供Expires,值为一个绝对时间表示缓存新鲜日期 HTTP1.1增加了Cache-Control:
max-age=,值为以秒为单位的最大新鲜时间
3、浏览器解析URL获取协议, 主机,端口, path
4、浏览器组装一个HTTP ( GET) 请求报文
5、浏览器获取主机ip地址, 过程如下:
- 浏览器缓存
- 本机缓存
hosts
文件- 路由器缓存
ISP DNS
缓存DNS
递归查询 ( 可能存在负载均衡导致每次IP
不一样)
6 、 打开一个socket与目标IP地址,端口建立TCP链接,三次握手如下:
- 客户端发送一个TCP的SYN=1,Seq=X的包到服务器端口。
- 服务器发回SYN=1, ACK=X+1, Seq=Y的响应包。
- 客户端发送ACK=Y+1, Seq=Z。
7、TCP链接建立后发送HTTP请求
8、服务器接受请求并解析,将请求转发到服务程序,如虚拟主机使用工TTP工ost头部判断请求的服务程序
9、 服务器检查HTTP请求头是否包含缓存验证信息如果验证缓存新鲜, 返回304等对应状态码
10、处理程序读取完整请求并准备工TTP响应, 可能需要查询数据库等操作
11、服务器将响应报文通过TCP连接发送回浏览器
12、浏览器接收工TTP响应,然后根据情况选择关闭TCP连接或者保留重用,关闭TCP连接的四 次握手如下:
- 主动方发送Fin=1, Ack=Z, Seq=X报文 。
- 被动方发送ACK=X+1, Seq=Z报文 。
- 被动方发送Fin=1, ACK=X, Seq=Y报文 。
- 主动方发送ACK=Y, Seq=X报文。
13、浏览器检查响应状态吗:是否为1XX, 3XX, 4XX, 5XX, 这些情况处理与2XX不同
14、 如果资源可缓存, 进行缓存
15、对响应进行解码 (例如gzip压缩)
16、根据资源类型决定如何处理(假设资源为工TML文档)
17、解析HTML文档,构件DOM树,下载资源,构造CSSOM树,执行js脚本, 这些操作没有严 格的先后顺序, 以下分别解释
18、 构建DOM树:
Tokenizing
:根据工TML规范将字符流解析为标记。Lexing
:词法分析将标记转换为对象并定义属性和规则。DOM construction
:根据工TML标记关系将对象组成DOM树 。
19、 解析过程中遇到图片 、样式表 、js文件,启动下载
20、 构建CSSOM树:
Tokenizing
:字符流转换为标记流。Node
:根据标记创建节点。CSSOM
:节点创建CSSOM树。
21、 根据DOM树和CSSOM树构建渲染树 :
- 从DOM树的根节点遍历所有可见节点,不可⻅节点包括:
script , meta
这样本身不可⻅的标签。- 被css隐藏的节点, 如
display:none
。
- 对每一个可⻅节点,找到恰当的CSSOM规则并应用。
- 发布可视节点的内容和计算样式。
22、 js解析如下:
- 浏览器创建
Document
对象并解析HTML,将解析到的元素和文本节点添加到文档中,此时document.readystate
为loading
。 - HTML解析器遇到没有
async
和defer
的script
时,将他们添加到文档中,然后执行行内 或外部脚本 。这些脚本会同步执行, 并且在脚本下载和执行时解析器会暂停 。这样就可 以用document.write()
把文本插入到输入流中 。同步脚本经常简单定义函数和注册事件 处理程序,他们可以遍历和操作script
和他们之前的文档内容。 - 当解析器遇到设置了
async
属性的script
时, 开始下载脚本并继续解析文档 。脚本会在它 下载完成后尽快执行,但是解析器不会停下来等它下载 。异步脚本禁止使用document.write()
, 它们可以访问自己script
和之前的文档元素。 - 当文档完成解析,
document.readState
变成interactive
。 - 所有
defer
脚本会按照在文档出现的顺序执行,延迟脚本能访问完整文档树, 禁止使用document.write()
。 - 浏览器在
Document
对象上触发DOMContentLoaded
事件。 - 此时文档完全解析完成, 浏览器可能还在等待如图片等内容加载, 等这些内容完成载入 并且所有异步脚本完成载入和执行,
document.readState
变为complete
,window
触发load
事件。
23、 显示页面 ( HTML解析过程中会逐步显示页面)
-
从浏览器接收
url
到开启网络请求线程 ( 这一部分可以展开浏览器的机制以及进程与线程 之间的关系)。 -
开启网络线程到发出一个完整的
HTTP
请求 ( 这一部分涉及到dns查询,TCP/IP
请求, 五层因特网协议栈等知识)。 -
从服务器接收到请求到对应后台接收到请求 (这一部分可能涉及到负载均衡, 安全拦截以 及后台内部的处理等等)。
-
后台和前台的
HTTP
交互 ( 这一部分包括HTTP
头部 、响应码 、报文结构 、cookie
等知 识, 可以提下静态资源的cookie
优化, 以及编码解码, 如gzip
压缩等)。 -
单独拎出来的缓存问题,
HTTP
的缓存 ( 这部分包括http缓存头部,ETag
,catch-control
等)。 -
浏览器接收到
HTTP
数据包后的解析流程 ( 解析html
词法分析然后解析成dom
树 、解析css
生成css
规则树、合并成render
树,然后layout
、painting
渲染、复合图 层的合成 、GPU
绘制 、外链资源的处理 、loaded
和DOMContentLoaded
等)。 -
CSS
的可视化格式模型 ( 元素的渲染规则, 如包含块,控制框,BFC
,IFC
等概念) 。 -
JS
引擎解析过程 (JS
的解释阶段,预处理阶段,执行阶段生成执行上下文,VO
,作用域链 、回收机制等等)。 -
其它 ( 可以拓展不同的知识模块, 如跨域,
web
安全,hybrid
模式等等内容)。
这篇关于你知道SEO中的TDK吗?iframe的作用以及优缺点?从浏览器地址栏输入url到显示页面的步骤由哪些?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!