Debian 编译安装 Nginx
此教程已在阿里云 2 核心 2GB 内存 3M 带宽 99 元一年的活动机上验证过,本人当前使用的线上云服务器就是这个,安装的 Debian12 系统,运行了四个 WordPress 网站 + Frp 内网穿透,点击此处直达阿里云购买链接。
安装前我们先更新下 Debian 上的软件列表,好让其保持最新,使用如下命令即可。
sudo apt-get update
环境准备
1、编译 Nginx 需要 gcc+ 的环境支持,build-essential 内包含 gcc+ 套件,所以我们先安装 build-essential ,执行如下命令:
sudo apt-get install build-essential
2、因为 Nginx 的配置文件 nginx.conf 中使用了正则表达式,所以编译 Nginx 时需要把 PCRE 库编译进 Nginx,而 Debian 内安装 PCRE 库,可以执行如下命令进行:
sudo apt-get install libpcre3 libpcre3-dev
3、Nginx 编译过程和 Http 相应过程还需要 gzip
格式的压缩,因此还需要安装 zlib库
用于对 HTTP 包的内容做 gzip
格式的压缩,请执行如下命令进行:
sudo apt-get install zlib1g-dev
4、Chrome 等主流浏览器现在强制要求网站必须开启 SSL 加密,使用 HTTPS
否则会显示不安全,所以 OpenSSL 编译环境也很重要,请执行如下命令:
sudo apt-get install openssl libssl-dev
至此,环境已准备完成,可以开始下载 Nginx 并进行编译安装。
编译安装 Nginx
1、下载 Nginx 源码
前往 Nginx 官网下载最新稳定版 Nginx(官网下载链接:https://nginx.org/en/download.html),使用最新稳定版本即可,选择对应版本的 Nginx 后复制下载链接,比如最新的 Nginx-1.26.1:https://nginx.org/download/nginx-1.26.1.tar.gz。

按顺序在服务器中执行如下命令:
# 下载 Nginx-1.26.1 源码( Stable 稳定版本)
wget "https://nginx.org/download/nginx-1.26.1.tar.gz"
# 使用 tar 命令解压 nginx-1.26.1.tar.gz
tar -xf nginx-1.26.1.tar.gz
# 解压后,进入解压目录
cd nginx-1.26.1
2、编译安装 Nginx
先生成 makefile 文件,编译参数可以参考官方 Nginx 文档:http://nginx.org/en/docs/configure.html
本人当前编译 Nginx 选择的参数如下,如无其它要求你可以直接使用和我一样的参数进行编译。
./configure \--prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=www-data --group=www-data --with-file-aio --with-threads --with-http_addition_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-pcre --with-http_realip_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module
参数说明:
- --prefix:Nginx 主要安装路径,后续 Nginx 子目录依照这个变量展开。
- --user:设置 Nginx 进程启动时,所属的用户(我使用的是 www-data)。
- --group:设置 Nginx 进程启动时,所属的用户组(我使用的是 www-data)。
手动新建一个 client_temp
文件夹,如下命令执行:
sudo mkdir -p /var/cache/nginx/client_temp
之后,在执行如下命令进行编译:
make && make install
至此编译完成,执行 sudo nginx -t
来检查 Nginx 配置是否正确,如下图所示表示配置正确。

如果编译安装和配置没有问题,使用 sudo nginx
可以启动 Nginx,浏览器输入服务器 IP 地址,可以见到如下输出。

至此,Nginx 编译安装完成,如下是一些日常使用的命令。
命令 | 用意 |
---|---|
sudo nginx | 启动 Nginx |
sudo nginx -t | 检测配置文件是否有语法错误 |
sudo nginx -s reopen | 重启 Nginx,不建议直接使用 |
sudo nginx -s reload | 重新加载 Nginx 配置文件 |
sudo nginx -s stop | 强制停止 Nginx 服务,不建议直接使用 |
sudo nginx -s quit | 安全地停止 Nginx 服务(即处理完所有请求后再停止服务) |
注意:每次修改完 Nginx 配置后,请先检测配置文件是否存在语法错误后在重新加载 Nginx 配置文件。