Jer*_*oen 9 reverse-proxy http multipartform-data nginx cache-control
我使用nginx作为反向代理,我希望它能缓存POST请求.我的后端已正确配置为POST请求返回适当的缓存控制头.在nginx中我配置了:
proxy_cache_methods POST;
proxy_cache_key "$request_method$request_uri$request_body";
Run Code Online (Sandbox Code Playgroud)
这适用于小型HTTP POST请求.但是我开始注意到对于大型请求(例如文件上传),它似乎$request_body被忽略了proxy_cache_key.当包含文件上载的表单提交两次完全不同的数据时,nginx将返回缓存的结果.
什么可能导致这个?如何配置nginx以便在大型POST请求中使用$request_body(或哈希$request_body)proxy_cache_key?
Jer*_*oen 12
事实证明,当时$content_length > client_body_buffer_size,请求体被写入文件和变量$request_body == "".
另见http://mailman.nginx.org/pipermail/nginx/2013-September/040442.html
| 归档时间: |
|
| 查看次数: |
2560 次 |
| 最近记录: |