Nginx的核心功能--正向代理、反向代理、缓存和Rewrite

Nginx作为高性能的Web服务器,其核心功能主要体现在以下四大模块:

一、正向代理

主要用于客户端访问外部网络的中转服务。典型配置示例:

nginx 复制代码
server {
    listen 8080;
    resolver 8.8.8.8;
    
    location / {
        proxy_pass http://$http_host$request_uri;
        proxy_set_header Host $http_host;
    }
}

注:需配合客户端代理设置使用

二、反向代理

核心应用场景是负载均衡与服务隐藏,常见配置:

nginx 复制代码
upstream backend {
    server 10.0.0.1:8000 weight=3;
    server 10.0.0.2:8000;
}

server {
    location / {
        proxy_pass http://backend;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

支持7种负载策略:轮询、权重、IP哈希等

三、缓存加速

多级缓存配置示例:

nginx 复制代码
proxy_cache_path /data/cache levels=1:2 keys_zone=my_cache:10m;

server {
    location / {
        proxy_cache my_cache;
        proxy_cache_valid 200 302 10m;
        proxy_cache_use_stale error timeout;
    }
}

缓存维度控制:

  • 根据URL、请求参数生成缓存键
  • 支持缓存过期时间分级设置
  • 可定制缓存清除策略

四、Rewrite引擎

URL重写三要素:

nginx 复制代码
rewrite ^/old/(.*)$ /new/$1 permanent;

语法结构:
r e w r i t e < r e g e x > < r e p l a c e m e n t > [ f l a g ] ; rewrite\ \ <regex>\ \ <replacement>\ \ [flag]; rewrite <regex> <replacement> [flag];

常用标记说明:

Flag 作用域 执行特点
last server块 重写后继续匹配location
break server块 立即终止匹配过程
redirect 全局 返回302临时重定向
permanent 全局 返回301永久重定向

典型应用场景:

  1. 动态URL静态化
  2. 多域名统一规范化
  3. A/B测试流量分割
  4. 灰度发布路径控制

这四大功能模块通过组合使用,可构建高性能的Web服务架构,QPS处理能力可达5万+/秒(取决于硬件配置)。

相关推荐
Juicedata14 分钟前
JuiceFS v1.3-Beta2:集成 Apache Ranger,实现更精细化的权限控制
运维·人工智能·ai
IT成长日记23 分钟前
05【Linux经典命令】Linux 用户管理全面指南:从基础到高级操作
linux·运维·服务器·用户管理·命令
小鱼小鱼.oO4 小时前
阿里云服务器安装nginx并配置前端资源路径(前后端部署到一台服务器并成功访问)
服务器·nginx·阿里云
资讯第一线4 小时前
Windows系统工具:WinToolsPlus 之 SQL Server Suspect/质疑/置疑/可疑/单用户等 修复
运维
惊起白鸽4505 小时前
LVS负载均衡
运维·负载均衡·lvs
伤不起bb6 小时前
NoSQL 之 Redis 配置与优化
linux·运维·数据库·redis·nosql
广东数字化转型7 小时前
nginx怎么使用nginx-rtmp-module模块实现直播间功能
linux·运维·nginx
love530love7 小时前
【笔记】在 MSYS2(MINGW64)中正确安装 Rust
运维·开发语言·人工智能·windows·笔记·python·rust
啵啵学习7 小时前
Linux 里 su 和 sudo 命令这两个有什么不一样?
linux·运维·服务器·单片机·ubuntu·centos·嵌入式
半桔7 小时前
【Linux手册】冯诺依曼体系结构
linux·缓存·职场和发展·系统架构