当前位置: 首页 > news >正文

电子商务网站建设的答案wordpress 4.6 中文版

电子商务网站建设的答案,wordpress 4.6 中文版,网站优化怎样的,金湖有哪里做网站的2、http和https HTTP#xff0c;超文本传输协议#xff0c;规定了浏览器和服务器之间数据传输的规则。HTTP 是应用层协议#xff0c;它以 TCP#xff08;传输层#xff09;作为底层协议#xff0c;默认端口为 80。 http的通信过程#xff1a;服务器在80端口等待客户的请…2、http和https HTTP超文本传输协议规定了浏览器和服务器之间数据传输的规则。HTTP 是应用层协议它以 TCP传输层作为底层协议默认端口为 80。 http的通信过程服务器在80端口等待客户的请求接着浏览器发起到服务器的TCP连接服务器接受TCP连接然后浏览器和服务器交换http消息最后关闭TCP连接。 可以看出http是基于tcp的。是可靠的请求相应一一对应。 另外 HTTP协议是无状态协议无状态指的是客户端发送HTTP请求给服务端之后服务端根据请求响应数据响应完后不会记录任何信息。这种特性有优点也有缺点缺点是无法共享数据。无状态的因此无法做连续多个步骤的操作。例如加入购物出结算支付。每次都需要验证身份信息但是无状态所以无法连续。解决办法就是利用会话技术(Cookie、Session)。优点就是速度快。 HTTPS 协议Hyper Text Transfer Protocol Secure是 HTTP 的加强安全版本。HTTPS 是基于 HTTP 的也是用 TCP 作为底层协议并额外使用 SSL/TLS 协议用作加密和安全认证。可以理解成HTTPS HTTP SSL/TLS。默认端口号是 443。SSL依靠证书来验证服务器的身份并为浏览器和服务器之间的通信加密。 SSL/TLS的核心要素是非对称加密。非对称加密采用两个密钥——一个公钥一个私钥。在通信时私钥仅由解密者保存公钥由任何一个想与解密者通信的发送者加密者所知。 常用的非对称加密算法RSA。 常见的对称加密算法有DES、3DES和AES 在实际通信过程中计算的代价较高效率太低因此SSL/TLS 实际对消息的加密使用的是对称加密。 https的主要步骤1、客户使用https的URL访问Web服务器要求与Web服务器建立SSL连接。2、Web服务器收到客户端请求后会将网站的证书信息证书中包含公钥传送一份给客户端/。3、客户端的浏览器与Web服务器开始协商SSL连接的安全等级也就是信息加密的等级。4、客户端的浏览器根据双方同意的安全等级建立会话密钥然后利用网站的公钥将会话密钥加密并传送给网站。5、Web服务器利用自己的私钥解密出会话密钥。6、Web服务器利用会话密钥加密与客户端之间的通信。 结合了对称加密和非对称加密的方式。 数字签名实现完整性。数字证书CA实现身份认证。加密实现密文传输。 常见的状态码 100-199 用于指定客户端应相应的某些动作。 200-299 用于表示请求成功。 300-399 用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。 400-499 用于指出客户端的错误。 500-599 用于支持服务器错误。 如果服务器收到头信息中带有100-continue的请求这是指客户端询问是否可以在后续的请求中发送附件。 200 OK客户端请求成功。 300表示被请求的文档可以在多个地方找到并将在返回的文档中列出来。如果服务器有首选设置首选项将会被列于定位响应头信息中。 301 状态是指所请求的文档在别的地方;文档新的URL会在定位响应头信息中给出。浏览器会自动连接到新的URL。永久重定向。 302页面暂时性转移表示资源或页面暂时转移到另一个位置常被用作网址劫持或负载均衡 304 告诉客户端可以使用缓存资源 403 Forbidden指的是服务器端有能力处理该请求但是拒绝授权访问。404 Not Found请求资源不存在比如资源被删除了或用户输入了错误的URL。 408 (Request Timeout/请求超时) 500 Internal Server Error服务器发生不可预期的错误一般是代码的BUG所导致的。500 (SC_INTERNAL_SERVER_ERROR) 是常用的“服务器错误”状态。该状态经常由CGI程序引起 502 (Bad Gateway/错误的网关) 503 服务器繁忙 HTTP 缓存技术 对于一些具有重复性的 HTTP 请求比如每次请求得到的数据都一样的我们可以把这对「请求-响应」的数据都缓存在本地那么下次就直接读取本地的数据不必在通过网络获取服务器的响应了。HTTP 缓存有两种实现方式分别是强制缓存和协商缓存 强缓存指的是只要浏览器判断缓存没有过期则直接使用浏览器的本地缓存决定是否使用缓存的主动性在于浏览器这边。 强缓存是利用下面这两个 HTTP 响应头部Response Header字段实现的它们都用来表示资源在客户端缓存的有效期 Cache-Control 是一个相对时间 Expires是一个绝对时间 如果 HTTP 响应头部同时有 Cache-Control 和 Expires 字段的话Cache-Control 的优先级高于 Expires 当我们在浏览器使用开发者工具的时候你可能会看到过某些请求的响应码是 304这个是告诉浏览器可以使用本地缓存的资源通常这种通过服务端告知客户端是否可以使用缓存的方式被称为协商缓存。 3、get post put delete等区别 这些都是http定义的与服务器进行交互的不同方法。 从数据库角度来说get相当于查询从服务器查询相关数据 post是增加服务器的资源;delete是删除资源put是修改服务器的资源。 还有其余的head用来查询头部信息不返回实体信息trace用来回环诊断回显服务器收到的请求因为请求传递过程中会经过防火墙等trace查看请求中途是否被更改options允许客户端查看服务器性能 由于put是幂等的也就是如果两次请求相同那么第二次会覆盖第一次所以put用来更新资源而post是非幂等的不会覆盖所以用来添加资源。 重点是get和post的区别和联系 1.一个请求数据一个上传数据 2、安全性get因为参数会放在url中get请求会保存在浏览器历史可保存为书签所以隐私性安全性较差post的数据在body中。 3、数据长度由于get的请求放在url中虽然http对url长度没有限制但是服务器了浏览器有限制一般在1024字节以内。因为长url解析消耗性能太大并且容易收到恶意构造长url的攻击。post由于数据放在body中所以没有限制。示例如下 GET /updateInfo?nameJavanxage25 HTTP/1.1 Host: localhostPOST /updateInfo HTTP/1.1 Host: localhost Content-Type: application/x-www-form-urlencoded nameJavanxage25GET 和 POST 只是 HTTP 协议中两种请求方式异曲同工而 HTTP 协议是基于 TCP/IP 的应用层协议无论 GET 还是 POST用的都是同一个传输层协议所以在传输上没有区别。 但如果不按规范来也是可以的可以在 URL 上写参数然后方法使用 POST也可以在 Body 写参数然后方法使用 GET。当然这需要服务端支持。 GET 方法参数写法是固定的吗 在约定中我们的参数是写在 ? 后面用 分割。 我们知道解析报文的过程是通过获取 TCP 数据用正则等工具从数据中获取 Header 和 Body从而提取参数。 POST 方法比 GET 方法安全 有人说POST 比 GET 安全因为数据在地址栏上不可见。 然而从传输的角度来说他们都是不安全的因为 HTTP 在网络上是明文传输的只要在网络节点上捉包就能完整地获取数据报文。 要想安全传输就只有加密也就是 HTTPS。 POST 方法会产生两个 TCP 数据包 有些文章中提到post 会将 header 和 body 分开发送先发送 header服务端返回 100 状态码再发送 body。 HTTP 协议中没有明确说明 POST 会产生两个 TCP 数据包而且实际测试(Chrome)发现header 和 body 不会分开发送。 所以header 和 body 分开发送是部分浏览器或框架的请求方法不属于 post 必然行为。 14. cookie,session区别 http是无连接的这次请求和上次请求没有关系。但是如果需要数据共享追踪用户行为购物车就需要知道用户信息。 cookie是一种存储在浏览器的字段信息只有4kb以键值对形式存在。一般访问流程 用户http请求服务器在响应头加一个set-cookie选项里面包含cookie。之后用户再发送http请求时就会把cookie信息加在请求部分里面服务器就会进行相应的业务响应。 session和cookie看起来很像。但是我们要分清session概念和session实现。session就是一个会话相当于给服务器和浏览器建立一个连接。那么session的实现就是利用cookie为载体的服务器会为每个浏览器产生一个独一的session id来标识连接之后每次请求只要把id放在请求头部就可以知道浏览器是谁了。而一些用户信息上下文信息都是存储在服务器中请求时只需要复制id就可以。而这个id往往就是通过cookie实现的。也就是说cookie是实现session id传递的载体之一。如果浏览器禁用cookie的话session id也可以通过url重写实现。 所以综合来说cookie很具体就是一种服务器生成存储在浏览器上的小字段实现鉴权的具体方式。而session是一种宽泛的会话技术通过session id标识为服务器浏览器建立连接。 区别总结 1、cookie存储在浏览器中所以安全性较差容易被劫持伪造session只有id在浏览器中具体信息存储在服务器中安全性好一点但是会增加服务器的负担而且多个服务器的话负载均衡后很有可能找不到了。比如自动保存的密码等。 2、cookie只有4kb大小只能存ASCII字符而session存储信息不限类型也很多。 15. 谈一谈http长连接、短连接、超时 明确一个概念http是无状态的应用层协议没有长短连接一说请求响应和下一次没有关系的。这里的长连接实际上是指TCP连接。 短连接就是这一次请求响应结束后下一次请求响应就要重新建立TCP连接。Connection:close就是短连接 长连接就是TCP连接不关闭下一次请求响应就不用再三次握手四次挥手了减少资源消耗比如一次请求 HTML可能还需要请求后续的 JS/CSS/图片等。http1.0默认是短连接1.1默认是长连接。 一般长连接就是在请求头设置Connection:keep-alive 和Keep-Alive: timeout60。有timeout说明60s后连接失效没有的话说明连接一直有效。 对于点对点的交互频繁的。比如数据库就是长连接。对于web网页这种用户很多一般用短连接。不然的话会有成千上万的连接同时保存在服务器端。 长连接还有一个额外的问题就是队头阻塞。在请求应答过程中如果出现任何状况剩下所有的工作都会被阻塞在那次请求应答之后。 解决办法现代浏览器会针对单个域名开启6个连接通过各个连接分别发送请求。它实现了某种程度上的并行但治标不治本。 HTTP/2是完全多路复用的而非有序并阻塞的。http2在一个连接上处理多个请求实现流式传输将请求分片每个请求都有自己的id标识到达服务器后再组装起来。这样就实现多路复用提高效率。 超时的情况请求超时比如现在网络超级不好当客户端发起一个请求通信层开始请求与服务器建立连接包括在重试如果在5S之内还没有连接到服务器那么认为超时。 响应超时一个不正确的url将会响应404。或者服务器响应速度太慢连接已经关闭。 http协议各个版本的演进 http1.0 默认是短连接效率不高。 http1.1默认是长连接。另外支持管道pipeline网络传输只要第一个请求发出去了不必等其回来就可以发第二个请求出去可以减少整体的响应时间。缺点:请求 / 响应头部Header未经压缩就发送首部信息越多延迟越大;队头阻塞请求只能从客户端开始服务器只能被动响应 http2的改进是基于https的 头部压缩 HTTP/2 会压缩头Header如果你同时发出多个请求他们的头是一样的或是相似的那么协议会帮你消除重复的部分。 这就是所谓的 HPACK 算法在客户端和服务器同时维护一张头信息表所有字段都会存入这个表生成一个索引号以后就不发送同样字段了只发送索引号这样就提高速度了。 二进制格式 HTTP/2 不再像 HTTP/1.1 里的纯文本形式的报文而是全面采用了二进制格式头信息和数据体都是二进制并且统称为帧frame头信息帧Headers Frame和数据帧Data Frame。 并行发送针对不同的 HTTP 请求用独一无二的 Stream ID 来区分接收端可以通过 Stream ID 有序组装成 HTTP 消息不同 Stream 的帧是可以乱序发送的因此可以并发不同的 Stream 也就是 HTTP/2 可以并行交错地发送请求和响应。 服务器推送客户端和服务器双方都可以建立 Stream Stream ID 也是有区别的客户端建立的 Stream 必须是奇数号而服务器建立的 Stream 必须是偶数号。 HTTP/2 的缺点 但是 HTTP/2 还是存在“队头阻塞”的问题只不过问题不是在 HTTP 这一层面而是在 TCP 这一层。一旦发生了丢包现象就会触发 TCP 的重传机制这样在一个 TCP 连接中的所有的 HTTP 请求都必须等待这个丢了的包被重传回来。 HTTP/3 做了哪些优化 所以 HTTP/3 把 HTTP 下层的 TCP 协议改成了 UDP 大家都知道 UDP 是不可靠传输的但基于 UDP 的 QUIC 协议 可以实现类似 TCP 的可靠性传输。 无队头阻塞 更快的连接建立 对于 HTTP/1 和 HTTP/2 协议TCP 和 TLS 是分层的分别属于内核实现的传输层、openssl 库实现的表示层因此它们难以合并在一起需要分批次来握手先 TCP 握手再 TLS 握手。 HTTP/3 在传输数据前虽然需要 QUIC 协议握手但是这个握手过程只需要 1 RTT握手的目的是为确认双方的「连接 ID」连接迁移就是基于连接 ID 实现的。 但是 HTTP/3 的 QUIC 协议并不是与 TLS 分层而是 QUIC 内部包含了 TLS它在自己的帧会携带 TLS 里的“记录”再加上 QUIC 使用的是 TLS/1.3因此仅需 1 个 RTT 就可以「同时」完成建立连接与密钥协商 连接迁移 而 QUIC 协议没有用四元组的方式来“绑定”连接而是通过连接 ID 来标记通信的两个端点客户端和服务器可以各自选择一组 ID 来标记自己因此即使移动设备的网络变化后导致 IP 地址变化了只要仍保有上下文信息比如连接 ID、TLS 密钥等就可以“无缝”地复用原连接消除重连的成本没有丝毫卡顿感达到了连接迁移的功能。
http://www.dnsts.com.cn/news/94144.html

相关文章:

  • app开发和网站开发哪个简单免费ppt模板大全免费下载
  • 网站推广运作怎么做网页设计学校官网
  • 泰州网站建设优化ppt模板大全百度云
  • 做网站如何兼职网站建设佛
  • 网络网站推广优化用html做网站搜索框
  • 查看网站历史页面wordpress怎么建栏目
  • iis7站长工具天津网站运营
  • 个人免费网站创建入口受欢迎的购物网站建设
  • 前沿科技帮客户做的网站有钱赚吗购物网站app推广方案
  • 网站推广的分类广州比较好的网站建设哪家好
  • 网站改版需要向百度000提交吗WordPress登录ip
  • 专业网站设计模板用wordpress做的外贸网站
  • 登录网站后没有转页面企业展示型网站建设
  • 中和华丰建设有限责任公司网站做网站金山
  • 企业app制作开发公司专业seo网络营销公司
  • 网站 备案 注销wordpress修改logo大小代码
  • 功能性质网站公司网站建设模板免费
  • 湖北专业网站建设口碑好网站建设应注意的问题有哪些
  • 小型玩具企业网站建设初期阶段任务个人网站 组建
  • 电商网站开发工程师购买平台有哪些
  • 哈尔滨网络科技公司做网站做网站销售电销好做吗
  • 五一网站个人空间女性手机网站模板
  • 财政网站平台建设不足企业运营方案
  • 网站服务器租用还是托管呢品牌策划方案设计
  • 高新区建设局网站wordpress 树状目录
  • 常用的博客建站程序装修公司排名
  • 网站导航栏自适应显示做虚拟网站要花多少钱
  • 培训机构网站设计好吗免费的破解版wordpress主题
  • 泊头做网站的wordpress 外观
  • 网站建设兆金手指下拉公司网站制作的教程