96SEO 2025-11-04 12:42 0
网站的性能和响应速度成为了用户体验的关键因素。Nginx 作为一款高大性能的Web服务器, 其动态页面缓存功能能帮网站搞优良访问速度,减轻巧服务器压力。本文将深厚入探讨怎么在 Nginx 中巧妙设置动态页面缓存。
先说说 需要在 Nginx 配置文件中添加以下配置:

html
proxy_cache_path /tmp/nginx_cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;
这玩意儿配置表示将缓存文件存储在 /tmp/nginx_cache 目录下缓存数据的键值存储在 my_cache 内存区域中,缓存最巨大为 10GB,缓存文件在 60 分钟内未被访问将被删除。
在 http 模块中, 配置反向代理:
http { server { listen 80; server_name example.com;
# 配置缓存
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;
location / {
proxy_pass http://backend;
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_set_header X-Forwarded-Proto $scheme;
}
}
}
这里proxy_cache_path 指定了缓存文件的存储路径、缓存键值存储区域、最巨大缓存巨大细小以及缓存文件失效时候。
在需要缓存的位置添加缓存规则, 比方说针对 PHP 动态页面:
html
location ~ \.php$ {
proxy_pass http://backend;
proxy_cache my_cache;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 404 1m;
}
这里proxy_cache 指定了缓存的键值存储区域,proxy_cache_valid 指定了不同响应状态码的缓存时候。
为了使 Nginx 缓存动态页面需要在后端服务器返回的响应头中添加 Cache-Control
html
Cache-Control: max-age=600
这玩意儿头部信息表示该页面缓存 600 秒。
当动态页面内容发生变来变去时需要手动清除对应的缓存条目。能通过以下命令实现:
html
nginx -s reload
这玩意儿命令会沉新鲜加载 Nginx 配置文件,从而清除相关的缓存。
通过以上步骤, 您能在 Nginx 中巧妙设置缓存策略,以达到最佳效果。
Demand feedback