Ubuntu 系统 tar 包源码安装 Nginx

Ubuntu 系统 里如果你不用 apt install nginx,而是通过 tar 包源码安装 Nginx,步骤要自己编译和配置。下面给你一个完整的流程:

Ubuntu 用 tar 包安装 Nginx 步骤

1. 安装依赖

Nginx 需要编译工具和一些库:

bash 复制代码
sudo apt update
sudo apt install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

2. 下载 Nginx 源码 tar 包

Nginx 官方下载页面 获取最新版:

bash 复制代码
wget http://nginx.org/download/nginx-1.26.2.tar.gz

3. 解压源码包

bash 复制代码
tar -zxvf nginx-1.26.2.tar.gz
cd nginx-1.26.2

4. 配置编译选项

bash 复制代码
./configure --prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_gzip_static_module

说明:

  • --prefix=/usr/local/nginx 指定安装路径(你可以改成 /opt/nginx 或其他路径)。
  • --with-http_ssl_module 支持 HTTPS。
  • --with-http_stub_status_module 开启 Nginx 状态监控。

5. 编译和安装

bash 复制代码
make
sudo make install

安装完成后,Nginx 默认目录结构:

复制代码
/usr/local/nginx/
 ├── conf/         # 配置文件目录 (nginx.conf)
/usr/local/nginx/sbin/nginx   # 主程序

6. 启动 Nginx

bash 复制代码
/usr/local/nginx/sbin/nginx

7. 测试是否成功

浏览器访问:

复制代码
http://服务器IP/

能看到 Welcome to nginx! 就说明成功了。


8. 常用操作

bash 复制代码
# 停止
/usr/local/nginx/sbin/nginx -s stop

# 优雅重启(常用)
/usr/local/nginx/sbin/nginx -s reload

# 测试配置文件
/usr/local/nginx/sbin/nginx -t

9. 配置 systemd 服务(推荐)

让 Nginx 开机自启:

创建服务文件:

bash 复制代码
sudo nano /etc/systemd/system/nginx.service

内容:

ini 复制代码
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target

[Service]
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PIDFile=/usr/local/nginx/logs/nginx.pid
Restart=on-failure

[Install]
WantedBy=multi-user.target

保存后执行:

bash 复制代码
sudo systemctl daemon-reexec
sudo systemctl enable nginx
sudo systemctl start nginx

然后就可以用:

bash 复制代码
systemctl status nginx

相关推荐
工业一体机老司机19 小时前
Linux工业一体机自启动服务配置:systemd服务单元编写与开机优化实战
java·linux·服务器
zhixingheyi_tian19 小时前
Linux 之 ssh
linux·服务器·ssh
小鱼仙官20 小时前
Ubuntu C++ NTP校时程序
linux·c++·ubuntu
RisunJan20 小时前
Linux命令-vgdisplay(显示卷组详细属性)
linux·运维·数据库
深念Y20 小时前
RIO-UL00(EMUI 4.1 / Android 6.0.1 / arm64)开机自启动 sshd
android·linux·华为·安卓·chroot·sshd·emui
Escalating_xu20 小时前
【Linux线程】线程控制全解析:终止、join/detach、cancel、线程栈与 NPTL(下篇)
java·linux·运维
老当益壮梁奶奶20 小时前
Linux软件编程学习笔记(二)Linux文件IO编程入门:从fopen到fgetc
linux·c语言·c++·笔记·学习
sunoo-22920 小时前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
草莓熊Lotso21 小时前
【Linux网络加餐】手动部署:SSH 与 Web 服务实战 + 底层原理全解析
linux·运维·网络·人工智能·python·langchain·ssh
CHHH_HHH21 小时前
【Linux系统篇】深入解析Linux文件系统:从磁盘寻址到软硬链接
linux·服务器·开发语言·后端·ubuntu