插件窝 干货文章 RHEL8中怎么部署Nginx Web服务

RHEL8中怎么部署Nginx Web服务

Nginx sudo bash example 145    来源:    2025-04-25

在RHEL8上部署Nginx Web服务指南

准备工作

  1. 确保你拥有RHEL8系统的root权限或sudo权限
  2. 确保系统已注册并可以访问Red Hat订阅仓库

安装Nginx

方法1:从EPEL仓库安装

  1. 启用EPEL仓库:

    sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
    sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
    
  2. 安装Nginx:

    sudo dnf install nginx
    

方法2:从官方Nginx仓库安装(获取最新版本)

  1. 添加Nginx官方仓库:

    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
    
  2. 安装Nginx:

    sudo dnf install nginx
    

配置Nginx

  1. 启动Nginx服务:

    sudo systemctl start nginx
    
  2. 设置开机自启:

    sudo systemctl enable nginx
    
  3. 检查服务状态:

    sudo systemctl status nginx
    
  4. 配置防火墙允许HTTP/HTTPS流量:

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

基本配置

  1. 主配置文件位于:

    /etc/nginx/nginx.conf
    
  2. 默认服务器块配置位于:

    /etc/nginx/conf.d/default.conf
    
  3. 创建自定义网站配置(示例):

    sudo vi /etc/nginx/conf.d/example.com.conf
    

    添加以下内容:

    server {
       listen       80;
       server_name  example.com www.example.com;
       root         /var/www/example.com;
       index        index.html;
    
       location / {
           try_files $uri $uri/ =404;
       }
    }
    
  4. 创建网站目录:

    sudo mkdir -p /var/www/example.com
    sudo chown -R nginx:nginx /var/www/example.com
    
  5. 创建测试页面:

    echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/index.html
    
  6. 测试Nginx配置:

    sudo nginx -t
    
  7. 重新加载Nginx配置:

    sudo systemctl reload nginx
    

SELinux配置

如果使用SELinux,可能需要调整设置:

  1. 允许Nginx访问网站目录:

    sudo chcon -R -t httpd_sys_content_t /var/www/example.com
    
  2. 如果需要允许Nginx写入目录:

    sudo chcon -R -t httpd_sys_rw_content_t /var/www/example.com
    

验证安装

在浏览器中访问服务器的IP地址或域名,应该能看到Nginx欢迎页面或你创建的自定义页面。

高级配置(可选)

  1. 配置HTTPS:

    sudo dnf install certbot python3-certbot-nginx
    sudo certbot --nginx -d example.com -d www.example.com
    
  2. 设置自动续期:

    sudo certbot renew --dry-run
    
  3. 性能调优:

    • 编辑/etc/nginx/nginx.conf调整worker_processes和worker_connections
    • 启用gzip压缩
    • 配置缓存头

故障排除

  1. 检查错误日志:

    sudo tail -f /var/log/nginx/error.log
    
  2. 检查访问日志:

    sudo tail -f /var/log/nginx/access.log
    
  3. 检查端口监听:

    sudo ss -tulnp | grep nginx
    

通过以上步骤,你应该已经在RHEL8上成功部署了Nginx Web服务。