Ubuntu 本地编译安装 Nginx
在 Ubuntu 上本地编译安装 Nginx 主要包括以下几个步骤:
1. 安装必要的依赖
sudo apt update
sudo apt install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev
build-essential:用于编译软件libpcre3和libpcre3-dev:支持正则表达式(Nginx 使用它处理 HTTP 解析)zlib1g和zlib1g-dev:用于压缩功能libssl-dev:用于支持 HTTPS(SSL/TLS)
2. 下载 Nginx 源码
从 Nginx 官网 获取最新稳定版:
wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
(请检查 Nginx 官网是否有新版本,替换 nginx-1.24.0)
3. 配置编译选项
./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_gzip_static_module \
--with-stream \
--with-stream_ssl_module
--prefix=/usr/local/nginx指定安装目录--with-http_ssl_module支持 HTTPS--with-http_v2_module支持 HTTP/2--with-http_gzip_static_module开启 gzip 静态文件压缩--with-stream及--with-stream_ssl_module支持 TCP/UDP 代理
4. 编译并安装
make -j$(nproc)
sudo make install
其中 -j$(nproc) 让编译过程利用所有 CPU 线程,加快编译速度。
5. 启动 Nginx
/usr/local/nginx/sbin/nginx
检查是否启动成功:
ps aux | grep nginx
6. 配置开机启动(可选)
创建 Systemd 服务文件:
sudo nano /etc/systemd/system/nginx.service
添加以下内容:
[Unit]
Description=Nginx - high performance web server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PIDFile=/var/run/nginx.pid
Restart=always
[Install]
WantedBy=multi-user.target
然后启用:
sudo systemctl daemon-reload
sudo systemctl enable nginx
sudo systemctl start nginx
7. 测试 Nginx
curl -I http://localhost
如果返回 HTTP/1.1 200 OK,说明 Nginx 启动成功。
可以通过 http://<服务器IP> 访问 Nginx 默认页面。
8. 配置环境变量(可选)
如果希望全局可用 nginx 命令:
echo 'export PATH=$PATH:/usr/local/nginx/sbin' >> ~/.bashrc
source ~/.bashrc
这样就可以直接运行:
nginx -v
如果有额外的需求(比如添加更多模块),可以调整 ./configure 选项,重新编译安装。

浙公网安备 33010602011771号