手机版 收藏 导航

Nginx 如何实现动态页面缓存

原创   www.link114.cn   2023-07-16 21:36:30

Nginx 如何实现动态页面缓存

1. 配置 Nginx 开启缓存功能
在 Nginx 配置文件中添加以下配置:

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 分钟内未被访问将被删除。

2. 在需要缓存的位置添加缓存规则

location ~ \.php$ {
    proxy_pass http://backend;
    proxy_cache my_cache;
    proxy_cache_valid 200 302 10m;
    proxy_cache_valid 404 1m;
}
这个配置表示对于 PHP 动态页面,Nginx 会将响应状态码为 200 和 302 的页面缓存 10 分钟,404 的页面缓存 1 分钟。

3. 清除缓存
当动态页面内容发生变化时,需要手动清除对应的缓存条目,可以通过以下命令实现:

nginx -s reload
这个命令会重新加载 Nginx 配置文件,从而清除相关的缓存。

通过以上三个步骤,Nginx 就可以实现对动态页面的缓存,大大提高页面的访问速度。当然,对于不同的网站,需要根据实际情况来调整缓存策略,以达到最佳的效果。