本文主要介绍了在Linux上如何通过编译安装Nginx,并开启htttp2,还对使用http1.1和http2.0协议的访问本站的速度进行了比较。
1. 编译安装 Nginx
首先需要下载Nginx和它的几个依赖包。Zlib,Web请求传输时对数据进行压缩,节省带宽;PCRE,正则匹配URL进行路由分发;OpenSSL 或 LibreSSL,安全套接字算法库,提供https支持。下面都使用最新的版本:
|
|
配置时,至少需要启用 http_v2_module 和 http_ssl_module 这两个模块:
cd nginx-1.11.1
./configure --with-openssl=../libressl-2.4.1 --with-pcre=../pcre-8.30 --with-zlib=../zlib-1.2.8 --with-http_v2_module --with-http_ssl_module
你会看到如下信息输出,里面有配置文件和log的路径。
nginx path prefix: “/usr/local/nginx”
nginx binary file: “/usr/local/nginx/sbin/nginx”
nginx modules path: “/usr/local/nginx/modules”
nginx configuration prefix: “/usr/local/nginx/conf”
nginx configuration file: “/usr/local/nginx/conf/nginx.conf”
nginx pid file: “/usr/local/nginx/logs/nginx.pid”
nginx error log file: “/usr/local/nginx/logs/error.log”
nginx http access log file: “/usr/local/nginx/logs/access.log”
nginx http client request body temporary files: “client_body_temp”
nginx http proxy temporary files: “proxy_temp”
nginx http fastcgi temporary files: “fastcgi_temp”
nginx http uwsgi temporary files: “uwsgi_temp”
nginx http scgi temporary files: “scgi_temp”
然后安装就可以了
|
|
Nginx默认安装在/usr/local/nginx,这时可以通过命令查看一下Nginx的版本。
|
|
你会看到如下信息输出。
nginx version: nginx/1.11.1
这时还不能通过service nginx start/stop/restart管理Nginx状态。需要注册系统服务,这里直接将原来的Nginx替换为刚才编译的版本。
|
|
2. 配置 Nginx
注意:使用http2必须是https链接。根据自己的服务需求,配置好/usr/local/nginx/conf/nginx.conf文件,开启http2非常的简单,只需要将原来的 listen 443 ssl 替换为listen 443 ssl http2 ,启动nginx即可。
|
|
3. 测试
下面是没有开启HTTP/2访问本站:
下面是开启HTTP/2访问本站:
速度有提升。