Nginx反向代理缓存服务器配置详细说明以及案例
2025-03-09
7
Nginx反向代理缓存服务器配置详细说明
安装Nginx
确保已安装Nginx,并支持缓存模块。配置缓存路径
在Nginx配置文件中定义缓存路径和缓存参数:http { proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off; }
proxy_cache_path
:缓存存储路径。levels
:缓存目录层级。keys_zone
:定义缓存区域名称和大小。max_size
:缓存最大大小。inactive
:缓存未访问时的保留时间。use_temp_path
:是否使用临时路径。配置反向代理和缓存
在server
块中配置反向代理和缓存:server { listen 80; server_name example.com; location / { proxy_cache my_cache; proxy_cache_valid 200 302 10m; proxy_cache_valid 404 1m; proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504; proxy_pass http://backend_server; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
proxy_cache
:指定缓存区域。proxy_cache_valid
:定义不同响应码的缓存时间。proxy_cache_use_stale
:在特定情况下使用过期缓存。proxy_pass
:反向代理到后端服务器。proxy_set_header
:设置请求头。重启Nginx
保存配置文件并重启Nginx:sudo systemctl restart nginx
案例
假设后端服务器为192.168.1.100
,域名example.com
,配置如下:
http { proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off; server { listen 80; server_name example.com; location / { proxy_cache my_cache; proxy_cache_valid 200 302 10m; proxy_cache_valid 404 1m; proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504; proxy_pass http://192.168.1.100; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } }
此配置将example.com
的请求反向代理到192.168.1.100
,并缓存响应内容。
本篇文章内容来源于:Nginx反向代理缓存服务器配置详细说明以及案例
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。