如何解决nginx: [emerg] /etc/nginx/sites-enabled/ 中的“proxy_buffers”指令无效值
当我运行“sudo systemctl restart Nginx”时,会发生这种情况。
Nginx.service 的作业失败,因为控制进程退出并显示错误代码。详情参见“systemctl status Nginx.service”和“journalctl -xe”。
当我运行“systemctl status Nginx.service”时,会发生这种情况。
Mar 30 08:55:04 ip-172-31-22-186 Nginx[2624]: Nginx: [emerg] "proxy_buffers" 指令无效值 /etc/Nginx/sites-启用/...:19 Mar 30 08:55:04 ip-172-31-22-186 Nginx[2624]: Nginx: 配置文件 /etc/Nginx/Nginx.conf 测试失败
location / {
....
proxy_buffer_size 0M;
proxy_buffers 4 0M;
proxy_busy_buffers_size 0M;
client_max_body_size 0M;
}
这里的配置有问题吗?
解决方法
proxy_buffers 不能这样配置。根据它们的用途和设计方式,您可以不将缓冲区设置为 0m。这会将内存大小(页面大小)设置为 0M。
proxy_buffers
为单个连接设置用于从代理服务器读取响应的缓冲区的数量和大小。默认情况下,缓冲区大小等于一页内存。这是 4K 或 8K,具体取决于平台。
代理缓冲区大小等于一个内存页。要查找您当前的 memory_page 大小类型:
getconf PAGE_SIZE
这应该返回 4096(字节)-> 4K。
如您所见,根据您的系统架构,您只能使用 4K 或 8K 是有原因的。
我们有一篇关于一般代理的精彩博文。
https://www.nginx.com/blog/performance-tuning-tips-tricks/
通过将 proxy_buffering
变为 on
,您可以使用文档中显示的指令配置 proxy_buffers:
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_buffering
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。