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万+/秒(取决于硬件配置)。

相关推荐
小晶晶京京44 分钟前
day34-LNMP详解
linux·运维·服务器
fengyehongWorld1 小时前
Linux crontab定时任务
linux·运维
碎像2 小时前
Linux上配置环境变量
linux·运维·服务器
sunflower_w4 小时前
linux I2C核心、总线与设备驱动
linux·运维·服务器
myzzb4 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa
伊成5 小时前
Docker 部署 Nginx 完整指南
nginx·docker·容器
网硕互联的小客服5 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php
落日漫游6 小时前
K8s核心组件全解析
运维·docker·运维开发
2301_793086876 小时前
Redis 04 Reactor
数据库·redis·缓存
Demisse8 小时前
[Linux] Linux文件系统基本管理
linux·运维·服务器