源码编译安装nginx可精准控制路径、模块与环境,适用于https、状态监控及自定义模块等场景;需先装development tools、pcre-devel、zlib-devel、openssl-devel,再配置--prefix、--with-http_ssl_module等参数,最后make && make install。

Linux 系统中通过源码编译安装 Nginx,核心是手动控制安装路径、启用模块和优化运行环境。相比 yum 安装,它更适合需要 HTTPS、状态监控、自定义模块或非标准目录部署的场景。
准备编译依赖和基础工具
编译前必须确保系统已安装 C 编译器和关键开发库:
- 运行 sudo yum groupinstall "Development Tools" -y(CentOS/RHEL)或 sudo apt install build-essential -y(Ubuntu/Debian)安装 GCC 等编译工具
- 安装运行依赖库:sudo yum install pcre-devel zlib-devel openssl-devel -y(CentOS)或 sudo apt install libpcre3-dev zlib1g-dev libssl-dev -y(Ubuntu)
- 可选但推荐:创建专用用户降低安全风险,如 sudo useradd -r -s /sbin/nologin nginx
下载、解压并进入源码目录
从官网获取稳定版源码包(例如 1.28.1),避免使用过时或测试版:
- 执行 wget https://nginx.org/download/nginx-1.28.1.tar.gz
- 解压:tar -zxvf nginx-1.28.1.tar.gz && cd nginx-1.28.1
- 建议将源码放在 /usr/local/src/ 或 /opt/src/ 等规范路径下,便于管理
配置、编译与安装
configure 脚本决定最终功能和安装结构,务必根据需求设置参数:
- 常用配置命令示例:
./configure --prefix=/usr/local/nginx \
--user=nginx --group=nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_stub_status_module - 其中 --prefix 指定安装根目录;--with-http_ssl_module 是启用 HTTPS 的必要项;--with-http_stub_status_module 开启连接状态统计
- 确认无报错后执行:make && sudo make install
启动服务并验证
安装完成后需手动启用并检查是否正常工作:
- Nginx 二进制文件位于 /usr/local/nginx/sbin/nginx,配置文件在 /usr/local/nginx/conf/nginx.conf
- 首次启动前建议先检查配置语法:/usr/local/nginx/sbin/nginx -t
- 启动服务:/usr/local/nginx/sbin/nginx;重载配置:/usr/local/nginx/sbin/nginx -s reload
- 验证监听端口:ss -tlnp | grep :80;访问本机 IP,看到 “Welcome to nginx!” 页面即成功











