我注意到,当 Nginx 从 Firefox 等浏览器调用时,它使用 writev() 发送图像,但当 wgetting 图像时,它使用 sendfile() 发送图像。知道它为什么同时使用两者吗?我在配置中设置了“sendfile on ;”。在任何地方都找不到好的答案。谢谢!
答案1
我找到了答案,使用 Web 浏览器时使用 writev() 的原因是浏览器发送了请求 gzip 的标头。我在服务器上禁用了 gzip,现在使用 sendfile() 向 wget、curl 和浏览器发送图像。任务完成!
#gzip on;
#gzip_comp_level 9;
#gzip_types *;