gpt4 book ai didi

http - Nginx proxy_cache_key $request_body 被大请求体忽略

转载 作者:可可西里 更新时间:2023-11-01 15:11:21 28 4
gpt4 key购买 nike

我使用 nginx 作为反向代理,我希望它能缓存 POST 请求。我的后端已正确配置为为 POST 请求返回适当的缓存控制 header 。在 nginx 中我配置了:

proxy_cache_methods POST;
proxy_cache_key "$request_method$request_uri$request_body";

这对于小型 HTTP POST 请求非常有效。但是我开始注意到,对于大型请求(例如文件上传),$request_bodyproxy_cache_key 中似乎被忽略了。当一个包含文件上传的表单提交两次完全不同的数据时,nginx 将返回缓存的结果。

什么会导致这种情况?我如何配置 nginx 以使用 proxy_cache_key 中的 $request_body(或 $request_body 的散列),即使对于大型 POST 请求也是如此?

最佳答案

事实证明,当 $content_length > client_body_buffer_size 时,然后将请求正文写入文件和变量 $request_body == ""

另见 http://mailman.nginx.org/pipermail/nginx/2013-September/040442.html

关于http - Nginx proxy_cache_key $request_body 被大请求体忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18795701/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com