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安装

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

相关推荐
lpfasd12316 小时前
WinSW在Win7上失败真相-实测与修复
windows·nginx
lpfasd12319 小时前
nginx服务化五套方案原理解剖与选型
运维·nginx
ue星空20 小时前
ALS V4 中文拆解手册
运维·nginx
吴声子夜歌2 天前
Nginx应用与运维——Nginx集群负载与配置管理(二)
运维·nginx
cpolar技术支持2 天前
外网测试机的异常传不回内网?自托管 Sentry,用 cpolar 打通错误上报链路
python·nginx·docker·cpolar·sentry
吴声子夜歌2 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(一)
运维·nginx·kubernetes
螺蛳粉 螺蛳粉2 天前
第一篇:Keepalived 高可用实战:VIP 漂移与 Nginx 主备切换完整指南
运维·nginx·负载均衡·keepalived·高可用
吴声子夜歌2 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(三)
运维·nginx·kubernetes
吴声子夜歌2 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(二)
运维·nginx·kubernetes
Wang's Blog2 天前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx