插件窝 干货文章 CentOS下安装Nginx实例分析

CentOS下安装Nginx实例分析

Nginx sudo bash 安装 853    来源:    2025-04-27

CentOS下安装Nginx实例分析

安装前的准备工作

  1. 系统更新

    sudo yum update -y
    
  2. 安装EPEL仓库(提供额外的软件包):

    sudo yum install epel-release -y
    

安装Nginx的方法

方法一:通过YUM仓库安装(推荐)

sudo yum install nginx -y

方法二:从源码编译安装(适合需要自定义模块的情况)

  1. 安装编译依赖:

    sudo yum install gcc pcre-devel zlib-devel openssl-devel -y
    
  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. 配置编译选项:

    ./configure --prefix=/usr/local/nginx \
    --with-http_ssl_module \
    --with-http_stub_status_module
    
  4. 编译并安装:

    make && sudo make install
    

基本配置与管理

  1. 启动Nginx

    sudo systemctl start nginx
    
  2. 设置开机启动

    sudo systemctl enable nginx
    
  3. 检查状态

    sudo systemctl status nginx
    
  4. 配置文件位置

    • 主配置文件:/etc/nginx/nginx.conf
    • 站点配置:/etc/nginx/conf.d/

常见问题解决方案

问题1:80端口被占用

sudo netstat -tulnp | grep :80
# 如果被其他服务占用,停止该服务或修改Nginx监听端口

问题2:SELinux阻止访问

# 临时解决方案
sudo setenforce 0

# 永久解决方案
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

问题3:防火墙阻止访问

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

性能优化建议

  1. 工作进程数(根据CPU核心数设置):

    worker_processes auto;
    
  2. 连接数优化

    events {
       worker_connections 1024;
       multi_accept on;
    }
    
  3. 启用Gzip压缩

    gzip on;
    gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
    

日志分析

  • 访问日志:/var/log/nginx/access.log
  • 错误日志:/var/log/nginx/error.log

常用日志分析命令:

# 查看最近10个404错误
sudo grep ' 404 ' /var/log/nginx/access.log | tail -n 10

# 统计访问量最高的IP
sudo awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head -n 10

通过以上步骤和配置,您可以在CentOS系统上成功安装并优化Nginx服务器。