Nginx开启HTTP/2

2023年 1月 4日 47.5k 0

本文主要介绍了在Linux上如何通过编译安装Nginx,并开启htttp2,还对使用http1.1和http2.0协议的访问本站的速度进行了比较。

1. 编译安装 Nginx

首先需要下载Nginx和它的几个依赖包。Zlib,Web请求传输时对数据进行压缩,节省带宽;PCRE,正则匹配URL进行路由分发;OpenSSL 或 LibreSSL,安全套接字算法库,提供https支持。下面都使用最新的版本:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
wget http://nginx.org/download/nginx-1.11.1.tar.gz 

wget http://zlib.net/zlib-1.2.8.tar.gz 

wget http://ncu.dl.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.tar.gz 

wget http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.4.1.tar.gz

gunzip *.gz 

tar xvf nginx-1.11.1.tar zlib-1.2.8.tar   pcre-8.30.tar libressl-2.4.1.tar

配置时,至少需要启用 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”然后安装就可以了

1
2
make
make install

Nginx默认安装在/usr/local/nginx,这时可以通过命令查看一下Nginx的版本。

1
/usr/local/nginx/sbin/nginx  -v

你会看到如下信息输出。nginx version: nginx/1.11.1这时还不能通过service nginx start/stop/restart管理Nginx状态。需要注册系统服务,这里直接将原来的Nginx替换为刚才编译的版本。

1
2
3
service nginx stop
mv /usr/sbin/nginx /usr/sbin/nginx_bk 
ln -s   /usr/local/nginx/sbin/nginx   /usr/sbin/nginx

2. 配置 Nginx

注意:使用http2必须是https链接。根据自己的服务需求,配置好/usr/local/nginx/conf/nginx.conf文件,开启http2非常的简单,只需要将原来的 listen 443 ssl 替换为listen 443 ssl http2 ,启动nginx即可。

1
service nginx 

3. 测试

下面是没有开启HTTP/2访问本站:下面是开启HTTP/2访问本站:速度有提升。

相关文章

KubeSphere 部署向量数据库 Milvus 实战指南
探索 Kubernetes 持久化存储之 Longhorn 初窥门径
征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
那些年在 Terraform 上吃到的糖和踩过的坑
无需 Kubernetes 测试 Kubernetes 网络实现
Kubernetes v1.31 中的移除和主要变更

发布评论