我有一个网站,其中包含一些如下所示的 URL:,/prefix/ID
其中/prefix
是静态的并且ID
是唯一的。使用 Nginx 作为反向代理,我想/ID
仅在部分缓存这些页面,省略前缀。
我可以配置 Nginx 以便将原始 URL 的请求缓存在缩短的 URL 中吗?
我尝试了这个(我省略了一些不相关的部分)但显然这不是正确的解决方案:
http {
map $request_uri $page_id {
default $request_uri;
~^/prefix/(?<id>.+)$ $id;
}
location / {
proxy_cache_key $page_id
}
}
答案1
map $request_uri $page_id {
default $request_uri;
~^/prefix(?<id>/.+)$ $id;
}
请注意前导/
。