在Nginx中配置缓存策略可以通过设置proxy_cache_path和proxy_cache_key指令来实现。以下是一个基本的配置示例:
打开Nginx配置文件,通常位于/etc/nginx/nginx.conf或/etc/nginx/sites-available/your_domain.conf。
在http块中,使用proxy_cache_path指令定义缓存路径和参数。例如:
http {
# 缓存路径和参数
proxy_cache_path /tmp/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;
...
}
这里的参数解释如下:
/tmp/nginx:缓存文件的存储路径。levels=1:2:缓存目录的层级结构。keys_zone=my_cache:10m:为缓存分配的内存区域名称和大小。max_size=1g:缓存的最大容量。inactive=60m:缓存文件在未被访问后保持的时间。use_temp_path=off:是否使用临时路径存储缓存文件。server或location块中,使用proxy_cache指令启用缓存,并使用proxy_cache_key指令自定义缓存键。例如:server {
...
location / {
# 启用缓存
proxy_cache my_cache;
# 自定义缓存键
proxy_cache_key "$scheme$proxy_host$request_uri";
# 其他代理设置
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_set_header X-Forwarded-Proto $scheme;
}
...
}
sudo nginx -t # 检查配置文件语法是否正确
sudo nginx -s reload # 重新加载配置文件
现在,Nginx已经根据配置的缓存策略对请求进行缓存了。你可以根据实际需求调整缓存路径、大小、时间等参数。