在Nginx配置中设置缓存,主要涉及到两个指令:proxy_cache_path
和 proxy_cache
。以下是一个简单的示例,展示了如何在Nginx配置文件中设置缓存:
打开Nginx配置文件,通常位于 /etc/nginx/nginx.conf
或 /etc/nginx/sites-available/your_domain.conf
。
在 http
或 server
块中,使用 proxy_cache_path
指令定义缓存路径和相关参数。例如:
http {
# ...
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;
# ...
}
这里的参数解释如下:
/var/cache/nginx
:缓存文件的存储路径。levels=1:2
:缓存目录的层级结构。keys_zone=my_cache:10m
:为缓存分配的内存区域名称和大小。max_size=1g
:缓存的最大容量。inactive=60m
:缓存文件在未被访问的情况下保留的时间。use_temp_path=off
:是否使用临时文件存储。server
或 location
块中,使用 proxy_cache
指令启用缓存,并使用之前定义的缓存区域名称。例如:server {
# ...
location / {
proxy_pass http://backend_server;
proxy_cache my_cache;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 404 1m;
# ...
}
# ...
}
这里的参数解释如下:
proxy_pass
:后端服务器的地址。proxy_cache
:使用之前定义的缓存区域名称。proxy_cache_valid
:设置不同HTTP状态码的缓存时间。保存配置文件并退出编辑器。
重新加载Nginx以应用更改:
sudo nginx -t # 检查配置文件语法是否正确
sudo nginx -s reload # 重新加载配置文件
现在,Nginx已经配置好了缓存。当请求到达时,Nginx会将响应缓存到指定的路径,并在后续请求中使用缓存的响应。