cover

对于Http/2就不再这里再多费文墨,强烈推荐一下360前端工程师 @屈光宇 的系列文章:

下面说下如何升级到HTTP/2。

1. 升级Nginx到至少1.9.5

首先升级nginx版本,确保使用的是主源(包含了最新实验发行版),详细教程「戳我」。

以Ubuntu举例,首先下载「Key文件」,上传到服务器任意目录下,并在该文件目录下,执行:

sudo apt-key add nginx_signing.key

接着,修改apt仓库源/etc/apt/source.list的地址,增加下面两行仓库。

deb http://nginx.org/packages/mainline/ubuntu/ precise nginx
deb-data-url http://nginx.org/packages/mainline/ubuntu/ precise nginx

接下来执行apt-get clean && apt-get install nginx更新。

最后验证Nginx版本已经升级到至少1.9.5版本即可。

$ nginx -v
nginx version: nginx/1.9.5

2. 部署SSL+Http/2

部署SSL详细教程「戳我」,简版教程:去HTTPS证书颁发机构(比如StartSSL)申请密匙和证书,将申请到的key和crt,命名为server.key和server.crt并上传到服务器的/etc/nginx/conf.d/下。

部署Http/2很简单,修改Ghost 的 Nginx 配置如下:

server {  
    listen 80;
    server_name androidtest.org; 
    return 301 https://$host$request_uri;
}
server {  
        listen 443 ssl http2; 
        server_name androidtest.org;

    ssl                   on;
        ssl_certificate        /etc/nginx/conf.d/server.crt;
        ssl_certificate_key    /etc/nginx/conf.d/server.key;
        location / {
                proxy_set_header   X-Real-IP $remote_addr;
                proxy_set_header   Host      $http_host;
                proxy_pass         http://127.0.0.1:2368;
                client_max_body_size 35m;
        }
}

最后执行sudo service nginx restart重启Nginx服务器即可。

3. 重启验证

打开浏览器,打开开发者工具,选择Network,右键打开Protocol。 full-img刷新下网页,看到Protocol是h2,则说明你已经成功升级到Http/2了。

后言

对于HTTPS、SPDY和HTTP/2性能的比较,推荐可以参考:

自己搭建服务器开博客以来,就一直在和Web性能优化打交道,这一路走来学习了不少新知识,从用户输入URL到页面加载,每一步,每一个节点的研究和学习,每次都能发现很多好玩的东西,也Get到了不少网络攻和防的技巧。

强烈建议每个开发童鞋都买个服务器捣鼓下。

支付宝扫码打赏 微信打赏

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏

扫描二维码,分享此文章

蔡培培's Picture
蔡培培

精于规划,热爱研究,自我实现者。目前专注于安卓测试架构、测试开发与移动安全。

Guangzhou「广州」 http://androidtest.org