Nginx 动静分离配置(详细版)

本文介绍了Nginx 动静分离相关配置,主要包括了配置文件创建、配置示例、配置原理解析以及重新启用配置文件等等

本文目录

      • [1. 创建 Nginx 配置文件](#1. 创建 Nginx 配置文件)
      • [2. 配置示例](#2. 配置示例)
      • [3. 配置原理解析](#3. 配置原理解析)
      • [4. 启用配置文件并重新加载 Nginx](#4. 启用配置文件并重新加载 Nginx)

1. 创建 Nginx 配置文件

/etc/nginx/sites-available 目录下创建一个新的配置文件,如 ecommerce-p2p.conf

bash 复制代码
sudo nano /etc/nginx/sites-available/ecommerce-p2p.conf

2. 配置示例

nginx 复制代码
server {
    listen 80;
    server_name ecommerce-p2p.com;

    # 静态资源处理
    location ~* \.(jpg|jpeg|png|gif|css|js)$ {
        root /var/www/ecommerce-p2p/static;
        expires 30d;
    }

    # 动态资源处理
    location / {
        proxy_pass http://backend - servers;
        proxy_set_header Host $host;
        proxy_set_header X - Real - IP $remote_addr;
    }
}

upstream backend - servers {
    server 192.168.1.100:8080;
    server 192.168.1.101:8080;
}

3. 配置原理解析

  • 静态资源处理location ~* \.(jpg|jpeg|png|gif|css|js)$ 匹配以指定扩展名结尾的静态资源请求,将其指向 /var/www/ecommerce-p2p/static 目录,并设置缓存时间为 30 天。
  • 动态资源处理location / 匹配其他请求,将其转发到后端应用服务器组 backend-servers

4. 启用配置文件并重新加载 Nginx

bash 复制代码
sudo ln -s /etc/nginx/sites-available/ecommerce-p2p.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

|---------------------------------------------------------------------------------------------------|--------------------|--------------------------------------------------------------------------------------------------|
| ← 上一篇 MySQL------表添加索引多种方式 | 记得点赞、关注、收藏哦! | 下一篇 JUC小册------公平锁和非公平锁 → |

相关推荐
陈皮糖..10 小时前
27 届运维实习笔记|第三、四周:从流程熟练到故障排查,企业运维实战深化
运维·笔记·sql·nginx·ci/cd·云计算·jenkins
空中海17 小时前
Nginx 知识体系 · 下篇:高级与实战
运维·nginx·spring
身如柳絮随风扬1 天前
Nginx 入门教程:从安装到配置反向代理与负载均衡
运维·nginx·负载均衡
IntMainJhy1 天前
Flutter flutter_animate 第三方库 动画的鸿蒙化适配与实战指南
nginx·flutter·harmonyos
mfxcyh1 天前
使用MobaXterm配置nginx
java·服务器·nginx
阿里巴巴首席技术官1 天前
通过纯Nginx实现一个简单的文件上传功能
运维·nginx
就叫飞六吧1 天前
Docker Hub 上主流的nginx发行
java·nginx·docker
RePeaT2 天前
【Nginx】前端项目部署与反向代理实战指南
前端·nginx
wicb91wJ62 天前
Nginx反向代理与负载均衡配置详解
运维·nginx·负载均衡
蜡台2 天前
centos 8 安装 nginx-1.29.8 及相关配置教程
linux·nginx·centos