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

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

相关推荐
徒 花12 小时前
Nginx
运维·nginx·云原生
shumeigang13 小时前
nginx实用配置
运维·nginx
檀越剑指大厂13 小时前
【Nginx系列】Tengine:基于 Nginx 的高性能 Web 服务器与反向代理服务器
服务器·前端·nginx
AI分享猿18 小时前
小白学规则编写:雷池 WAF 配置教程,用 Nginx 护住 WordPress 博客
java·网络·nginx
敲不响的键盘19 小时前
Nginx Location匹配与Proxy_pass匹配规则
运维·nginx
努力进修1 天前
跨地域传文件太麻烦?Nginx+cpolar 让本地服务直接公网访问
运维·nginx·cpolar
rit84324992 天前
在Ubuntu上配置Nginx实现开机自启功能
数据库·nginx·ubuntu
一勺菠萝丶2 天前
芋道后端部署后总自己挂?从 Nginx 报错到 OOM Kill 的完整排查与修复(2核2G 服务器实战)
服务器·chrome·nginx
神奇侠20242 天前
基于spring-boot-admin实现对应用、数据库、nginx等监控
java·数据库·nginx
IT小哥哥呀2 天前
Nginx高可用配置实战:负载均衡 + 健康检查 + 动态扩展
运维·nginx·负载均衡·devops·日志分析·openresty·动态扩展