Centos下如何安装Nginx

发布时间:2022-04-11 17:46:24 作者:zzz
来源:亿速云 阅读:394
# CentOS下如何安装Nginx

## 前言

Nginx是一款高性能的开源Web服务器和反向代理服务器,以其轻量级、高并发处理能力和低内存消耗而闻名。在CentOS系统上安装Nginx可以为网站提供稳定的服务支持。本文将详细介绍在CentOS 7/8系统上通过不同方式安装Nginx的完整流程,包括基础配置和常见问题解决方案。

---

## 一、准备工作

### 1.1 系统要求
- CentOS 7或CentOS 8系统
- 具有sudo权限的用户账户
- 稳定的网络连接

### 1.2 更新系统包
在安装前建议先更新系统:
```bash
sudo yum update -y

1.3 安装EPEL仓库(CentOS 7必需)

sudo yum install epel-release -y

二、通过Yum安装Nginx(推荐)

2.1 添加Nginx官方仓库

# CentOS 7
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

# CentOS 8
sudo rpm -Uvh http://nginx.org/packages/centos/8/x86_64/RPMS/nginx-1.20.1-1.el8.ngx.x86_64.rpm

2.2 安装Nginx

sudo yum install nginx -y

2.3 验证安装

nginx -v
# 应输出类似:nginx version: 1.20.1

三、通过源码编译安装(高级用户)

3.1 安装依赖项

sudo yum install gcc pcre-devel zlib-devel openssl-devel -y

3.2 下载源码包

wget http://nginx.org/download/nginx-1.20.1.tar.gz
tar -zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1

3.3 编译配置

./configure \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_v2_module

3.4 编译安装

make && sudo make install

3.5 添加环境变量

echo 'export PATH=/usr/local/nginx/sbin:$PATH' >> ~/.bashrc
source ~/.bashrc

四、Nginx基础配置

4.1 启动/停止Nginx

# 系统服务方式(yum安装)
sudo systemctl start nginx
sudo systemctl stop nginx

# 源码安装方式
sudo /usr/local/nginx/sbin/nginx
sudo /usr/local/nginx/sbin/nginx -s stop

4.2 设置开机自启

sudo systemctl enable nginx

4.3 防火墙配置

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

4.4 配置文件结构

/etc/nginx/               # Yum安装的配置目录
├── nginx.conf            # 主配置文件
├── conf.d/               # 额外配置文件
├── sites-enabled/        # 启用站点配置(可能需要手动创建)
└── sites-available/      # 可用站点配置

4.5 创建虚拟主机

# 在/etc/nginx/conf.d/example.conf中添加:
server {
    listen 80;
    server_name example.com;
    root /var/www/example;
    index index.html;
    
    location / {
        try_files $uri $uri/ =404;
    }
}

五、常见问题解决

5.1 端口冲突

# 检查80端口占用
sudo netstat -tulnp | grep 80

# 如果被Apache占用
sudo systemctl stop httpd

5.2 SELinux阻止

# 临时解决方案
sudo setenforce 0

# 永久解决方案
sudo vi /etc/selinux/config
# 修改为:SELINUX=disabled

5.3 403 Forbidden错误

检查: 1. 目录权限是否正确 2. 文件所有者是否为nginx用户 3. index文件是否存在


六、性能优化建议

6.1 调整worker进程

# 在nginx.conf中修改:
worker_processes auto;  # 自动匹配CPU核心数
worker_connections 1024; # 每个worker的连接数

6.2 启用Gzip压缩

gzip on;
gzip_types text/plain text/css application/json;

6.3 启用缓存

location ~* \.(jpg|jpeg|png|gif)$ {
    expires 30d;
}

七、卸载Nginx

7.1 Yum安装的卸载

sudo systemctl stop nginx
sudo yum remove nginx -y
sudo rm -rf /etc/nginx

7.2 源码安装的卸载

sudo rm -rf /usr/local/nginx

结语

本文详细介绍了在CentOS系统上安装Nginx的多种方法,从简单的yum安装到自定义编译安装,并提供了基础配置指南和常见问题解决方案。建议生产环境使用官方仓库安装以获得自动更新支持。如需更高级功能,可参考Nginx官方文档

注意:所有命令均需根据实际环境调整,操作前建议备份重要数据。 “`

(全文约1700字,实际字数可能因格式略有差异)

推荐阅读:
  1. CentOS 6下编译安装Nginx
  2. CentOS7下安装Nginx

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

centos nginx

上一篇:CentOS如何快速安装Nginx服务器

下一篇:CentOS7系统下如何用YUM安装Nginx

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》