<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>https on Eric Jin</title>
    <link>https://ericjin.com/blog/tags/https/</link>
    <description>Recent content in https on Eric Jin</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 15 Jun 2019 21:43:29 +0800</lastBuildDate>
    <atom:link href="https://ericjin.com/blog/tags/https/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>升级https</title>
      <link>https://ericjin.com/blog/upgrade-to-https/</link>
      <pubDate>Sat, 15 Jun 2019 21:43:29 +0800</pubDate>
      <guid>https://ericjin.com/blog/upgrade-to-https/</guid>
      <description>免费升级网站HTTPS 升级完网站的部署工具，今天又把网站变成了https, 这个在之前看《图解HTTP》的时候就想弄，不过一下又忘了，今天算是把它搞定了。 我这边用的 Let&amp;rsquo;s Encrypt 的免费的机构认证。进入它的官网直接get started就好了。&#xA;要让你的网站启用https,你需要从权威认证机构拿到一个认证证书，Let&amp;rsquo;s Encrypt 就是一家认证机构。 这里官方推荐大多数人使用 Certbot来获取证书和自动化安装。&#xA;安装证书 进入https://certbot.eff.org/ 官网，可以直接填写你的web接入的软件和服务部署的系统。 然后它下面就直接会出现安装需要执行的命令，对照执行好了。 我的是nginx + ubuntu 18.04: $ sudo apt-get update $ sudo apt-get install software-properties-common $ sudo add-apt-repository universe $ sudo add-apt-repository ppa:certbot/certbot $ sudo apt-get update $ sudo apt-get install certbot python-certbot-nginx 安装完了以后运行&#xA;$ sudo certbot --nginx 这个命令会检测你nginx.conf下面的server_name,然后让你选择要启动https的域名，直接选序号就行，全选的好直接保持为空就行。&#xA;完了之后就会帮你下载证书并且更新你的nginx.conf:&#xA;listen 443 ssl; # managed by Certbot ssl_certificate /etc/letsencrypt/live/ericjin.com/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/ericjin.com/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.</description>
    </item>
    <item>
      <title>《图解HTTP》读书笔记</title>
      <link>https://ericjin.com/blog/%E5%9B%BE%E8%A7%A3HTTP%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/</link>
      <pubDate>Fri, 08 Feb 2019 15:17:29 +0000</pubDate>
      <guid>https://ericjin.com/blog/%E5%9B%BE%E8%A7%A3HTTP%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/</guid>
      <description>《图解HTTP》读书笔记 一、Web及网络基础 1.1 HTTP的诞生 3项WWW的构建技术：&#xA;HTML(HyperText Markup Language，超文本标记语言) 作为页面的文本标记语言&#xA;HTTP(HyperText Transfer Protocol，超文本传输协议) 作为文档传递的协议&#xA;URL(Uniform Resource Locator，统一资源定位符) 作为文档所在地的地址&#xA;1.2 网络基础协议 TCP/IP 计算机与网络设备要相互通信，双方就必须基于相同的方法。&#xA;1.2.1 TCP/IP的分层管理 TCP/IP 协议族按层次分别分为以下 4 层：应用层、传输层、网络层和数据链路层。&#xA;好处：每层做着自己的事情，不需要弄清楚上下层是如何运转的（封装），某层需要改变也可以单独修改，只要按照各层之间的接口封装即可&#xA;应用层：决定了向用户提供应用服务时通信的活动。FTP（File Transfer Protocol，文件传输协议）和 DNS（Domain Name System，域名系统）服务就是其中两类。HTTP也是应用层的。 传输层：传输层对上层应用层，提供处于网络连接中的两台计算机之间的数据传输。有两个性质不同的协议：TCP 和 UDP。 网络层：用来处理在网络上流动的数据包。 链路层：用来处理连接网络的硬件部分。 发送端在层与层之间传输数据时，每经过一层时必定会被打上一个该层所属的首部信息。反之，接收端在层与层传输数据时，每经过一层时会把对应的首部消去。这叫做封装。&#xA;​&#x9;1.3 与HTTP关系密切的协议：IP、TCP、DNS 1.3.1 负责传输的IP协议 IP协议处于网络层，作用是把各种数据包传送给对方。需要确定IP地址和MAC地址。&#xA;IP地址指明了节点被分配到的地址，MAC地址指网卡的固定地址。IP地址可以和MAC地址配对。&#xA;ARP协议：凭借MAC地址进行通信 IP通信依赖MAC地址，网络上，通信的双方要经过多台计算机和网络设备中转才能连接到对方。在中转时，会利用下一站中转设备的MAC地址来搜索下一个目标。这时，就用到了ARP协议——根据通信双方的IP地址就可以反查出对应的MAC地址。&#xA;中转过程中，计算机和路由器等网络设备只能获取很粗略的传输路线，称为路由选择。&#xA;1.3.2 确保可靠性的TCP协议 TCP处于传输层，提供可靠的字节流服务。&#xA;字节流服务：为了方便传输，将大块数据分割成以报文段为单位的数据包进行管理。&#xA;TCP协议为了更容易传送大数据才把数据分割，而且TCP协议能够确认数据最终是否送达对方。&#xA;确保数据能到达目标 TCP采用三次握手策略。TCP协议把数据送出去后，不会对传送后的情况置之不理，一定会向对方确认是否成功送达。握手过程中使用了TCP的标志：SYN和ACK。&#xA;发送端首先发送一个带 SYN 标志的数据包给对方。接收端收到后,回传一个带有 SYN/ACK 标志的数据包以示传达确认信息。最后,发送 端再回传一个带 ACK 标志的数据包,代表“握手”结束。 这就是有名的三次握手。&#xA;1.3.3 负责域名解析的DNS协议 DNS（Domain Name System）服务是和 HTTP 协议一样位于应用层的协议。它提供域名到 IP 地址之间的解析服务。</description>
    </item>
  </channel>
</rss>
