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

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

相关推荐
Harvey9035 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
全栈工程师修炼指南12 小时前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
鹏北海13 小时前
micro-app 微前端项目部署指南
前端·nginx·微服务
全栈工程师修炼指南14 小时前
Nginx | stream content 阶段:TCP 协议四层反向代理浅析与实践
运维·网络·网络协议·tcp/ip·nginx
森焱森15 小时前
详解 Spring Boot、Flask、Nginx、Redis、MySQL 的关系与协作
spring boot·redis·python·nginx·flask
954L16 小时前
CentOs7执行yum update出现链接404问题
linux·centos·yum·vault
考琪16 小时前
Nginx打印变量到log方法
java·运维·nginx
消失的旧时光-194317 小时前
Nginx 是什么?为什么它不写在代码里?——从 0 认识 Nginx
运维·服务器·nginx
不像程序员的程序媛1 天前
Nginx日志切分
服务器·前端·nginx
JoySSLLian1 天前
手把手教你安装免费SSL证书(附宝塔/Nginx/Apache配置教程)
网络·人工智能·网络协议·tcp/ip·nginx·apache·ssl