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小册------公平锁和非公平锁 → |

相关推荐
伊成15 小时前
Docker 部署 Nginx 完整指南
nginx·docker·容器
小白的代码日记1 天前
Nginx学习与安装
运维·nginx
ayaya_mana1 天前
Nginx性能优化与安全配置:打造高性能Web服务器
运维·nginx·安全·性能优化
油丶酸萝卜别吃2 天前
nginx配置代理服务器
运维·网络·nginx
花酒锄作田2 天前
Nginx反向代理Kafka集群
nginx·kafka
奥格列的魔法拖鞋~2 天前
Docker-LNMP架构 创建多项目- 单个ngixn代理多个PHP容器服务
nginx·docker·eureka·架构·php·lnmp
皓空揽月2 天前
php+apache+nginx 更换域名
nginx·php·apache
会说法语的猪2 天前
使用nginx反向代理kkfile
运维·nginx
夜影风2 天前
Nginx反向代理与缓存实现
运维·nginx·缓存
forestsea2 天前
Nginx蜘蛛请求智能分流:精准识别爬虫并转发SEO渲染服务
运维·爬虫·nginx