开篇先简单介绍一下什么是HTTP/2协议,以下内容引用自百度百科:
HTTP 2.0即超文本传输协议 2.0,是下一代HTTP协议。是由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis (httpbis)工作小组进行开发。是自1999年http1.1发布后的首个更新。HTTP 2.0在2013年8月进行首次合作共事性测试。在开放互联网上HTTP 2.0将只用于https:// 网址,而 http:// 网址将继续使用HTTP/1,目的是在开放互联网上增加使用加密技术,以提供强有力的保护去遏制主动攻击。
8月初,Nginx 官方博客发了一篇文章:「Announcing an Early Alpha Patch for HTTP/2」,也就是说 Nginx 开始对 HTTP/2 提供早期(Early Alpha)支持了。为了尝试下一代 HTTP 协议带来的效果,我决定在我的博客体验下这个协议带来的效果。
根据官方的指南,为了体验HTTP/2协议,你需要按照如下步骤来启用:
根据官方的指南,为了体验HTTP/2协议,你需要按照如下步骤来启用:
1.安装openssl 1.0.2或更新的版本,这个网上教程很多,我安装了1.0.2e,直接源码编译安装即可。
2.下载nginx 1.9.0或更新的版本,并解压缩,我下载了1.9.3
2.下载nginx 1.9.0或更新的版本,并解压缩,我下载了1.9.3
1 2 3 | wget http://nginx.org/download/nginx-1.9.3.tar.gz tar zxvf nginx-1.9.3.tar.gz cd nginx-1.9.3 |
3.下载HTTP/2的支持patch,并打上该patch
1 2 | wget http://nginx.org/patches/http2/patch.http2.txt patch -p1 < patch.http2.txt |
4.编译安装,参数可以参考你之前的参数,我附上我的编译参数
1 2 | ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-http_v2_module --with-openssl=/root/openssl-1.0.2d/ make |
5.配置并重启nginx
1 2 3 4 5 6 | server { listen 443 ssl http2; server_name mydomain.com www.mydomain.com; ... } |
1 2 | /usr/local/nginx/sbin/nginx -t #测试配置文件的准确定 /usr/local/nginx/sbin/nginx -s reload #重启nginx |
6.通过chrome可以查看HTTP/2的启用情况。
No comments:
Post a Comment