5年经验,没安装部署过Nginx?

在Linux服务器上安装Nginx有多种方式,以下是主要的安装方法:

1. 包管理器安装(推荐新手)

Ubuntu/Debian

复制代码
# 更新软件包列表
sudo apt update

# 安装Nginx
sudo apt install nginx

# 启动Nginx
sudo systemctl start nginx

# 设置开机自启
sudo systemctl enable nginx

CentOS/RHEL/Rocky Linux

复制代码
# 添加EPEL仓库(CentOS/RHEL)
sudo yum install epel-release
# 或
sudo dnf install epel-release

# 安装Nginx
sudo yum install nginx
# 或
sudo dnf install nginx

# 启动并启用Nginx
sudo systemctl start nginx
sudo systemctl enable nginx

2. 源码编译安装(推荐高级用户)

复制代码
# 安装依赖
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# 下载源码
wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0

# 配置编译选项
./configure --prefix=/usr/local/nginx \
            --with-http_ssl_module \
            --with-http_v2_module \
            --with-http_stub_status_module

# 编译并安装
make && sudo make install

# 启动Nginx
sudo /usr/local/nginx/sbin/nginx

3. 使用官方仓库安装

Ubuntu/Debian

复制代码
# 添加Nginx官方仓库
sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring
curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

# 添加稳定版仓库
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list

# 安装Nginx
sudo apt update
sudo apt install nginx

CentOS/RHEL

复制代码
# 创建仓库文件
sudo vi /etc/yum.repos.d/nginx.repo

# 添加以下内容
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key

# 安装Nginx
sudo yum install nginx

4. 使用Docker安装

复制代码
# 拉取Nginx镜像
docker pull nginx:latest

# 运行Nginx容器
docker run --name my-nginx -p 80:80 -d nginx

# 使用自定义配置运行
docker run --name my-nginx \
  -v /path/to/nginx.conf:/etc/nginx/nginx.conf:ro \
  -v /path/to/html:/usr/share/nginx/html:ro \
  -p 80:80 -d nginx

5. 使用包管理器的特定版本

安装特定版本(Ubuntu)

复制代码
# 查看可用版本
apt-cache policy nginx

# 安装特定版本
sudo apt install nginx=1.18.0-0ubuntu1

验证安装

安装完成后,验证Nginx是否正常运行:

复制代码
# 检查状态
sudo systemctl status nginx

# 测试配置文件
sudo nginx -t

# 查看版本
nginx -v

# 访问测试
curl http://localhost

各安装方式的优缺点

安装方式 优点 缺点
系统包管理器 简单快捷,自动处理依赖 版本可能较旧
源码编译 最新版本,可定制模块 安装复杂,需手动管理
官方仓库 版本较新,官方维护 需要添加第三方仓库
Docker 环境隔离,易于部署 需要Docker环境

推荐建议:

  • 新手和一般生产环境:使用系统包管理器或官方仓库
  • 需要特定功能或最新版本:源码编译安装
  • 容器化环境:使用Docker安装

选择哪种方式取决于你的具体需求、技术水平和服务器环境。

相关推荐
m0_537473491 天前
Nginx 生产环境平滑升级实战:从 1.24.0 到 1.28.0 的零宕机操作全记录
运维·nginx
BIBI20491 天前
Nginx 反向代理完全入门:从一个真实场景开始
nginx·部署·配置·问题解决·服务器运维·web 开发·web 服务器
weixin_440730501 天前
Nginx、Apache和tomcat的简单了解。
nginx·tomcat·apache
bkspiderx1 天前
用Nginx解决HTTP跨域问题:两种实用方案详解
nginx·http·跨域·http跨域
石像鬼₧魂石1 天前
Fail2ban + Nginx/Apache 防 Web 暴力破解配置清单
前端·nginx·apache
苹果醋32 天前
iview— Select— Option选中后有空格
运维·vue.js·spring boot·nginx·课程设计
catoop2 天前
网站安全加固:优化 Nginx 安全头配置
nginx·安全
GRsln2 天前
解决微信小程序报“errno“:600001 ERR_CERT_AUTHORITY_INVALID问题
nginx·微信小程序·小程序·ssl
艾德金的溪2 天前
性能数据接收接口I/O堵塞问题处理及Nginx分流扩容方案
nginx
iru3 天前
nginx被报CVE-2025-1695漏洞,检查后反馈是误报
运维·nginx