在 Ubuntu 16.04 上源码编译安装 Nginx 1.10.0,适用于需要自定义模块或开启特定编译选项的场景。以下是详细步骤:
✅ 一、准备工作
1. 更新系统软件包索引
sudo apt update
sudo apt upgrade -y
2. 安装编译依赖
sudo apt install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev
✅ 二、下载 Nginx 1.10.0 源码
1. 创建临时目录并下载源码
mkdir -p ~/nginx-build
cd ~/nginx-build
wget http://nginx.org/download/nginx-1.10.0.tar.gz
2. 解压
tar zxvf nginx-1.10.0.tar.gz
cd nginx-1.10.0
✅ 三、配置编译参数
你可以选择默认参数或加上模块支持,例如:
./configure \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_stub_status_module
✅ 四、编译和安装
make
sudo make install
✅ 五、启动 Nginx
sudo /usr/local/nginx/sbin/nginx
如果不报错,可以通过浏览器访问:
http://localhost
会看到 Welcome to nginx!
页面。
✅ 六、常用命令(路径可能需根据实际情况修改)
操作 | 命令 |
---|---|
启动 | sudo /usr/local/nginx/sbin/nginx |
停止 | sudo /usr/local/nginx/sbin/nginx -s stop |
重启 | sudo /usr/local/nginx/sbin/nginx -s reload |
配置检查 | sudo /usr/local/nginx/sbin/nginx -t |
✅ 七、可选:设置 systemd 启动服务
创建一个服务文件:
sudo nano /etc/systemd/system/nginx.service
内容如下(假设安装路径为 /usr/local/nginx
):
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
然后启用:
sudo systemctl daemon-reexec
sudo systemctl enable nginx
sudo systemctl start nginx
🧾 附:查看版本
/usr/local/nginx/sbin/nginx -v
# 输出:nginx version: nginx/1.10.0
如果你想集成第三方模块(例如 ngx_brotli、lua-nginx-module),可以在 ./configure
时添加路径,我也可以帮你配置。
是否还需我帮你配置 https、gzip、反向代理或负载均衡规则?
发表回复