Nginx url 限制 502 网关

mat*_*_io 6 nginx amazon-ec2 amazon-web-services

我有一个问题,但我接受其他绕过此功能的建议。

基本上,我在 get 请求中向我的服务器发送大约 3000 个字符的大行文本,然后服务器将其发送给谷歌翻译作为 url 中的参数。

问题:当 url > 1900 个字符时,Nginx 向我抛出 502 bad gateway 错误。

如何增加我的 nginx url 的限制?

替代解决方案:使用 JSON 中的 3000 个字符作为字符串发送 post 请求?

Tom*_*ijs 6

要回答您的问题,您可以在包含服务器配置的 nginx.conf 文件中更改一个设置。

将以下设置设置为适合您情况的设置:

large_client_header_buffers 4 16k;
Run Code Online (Sandbox Code Playgroud)

此处找到它的文档

我建议使用 POST 请求,以防您的 ~3000 个字符请求变大并且您的 nginx 配置达到它的限制。


Aar*_*ron 5

这里要注意的重要一点是 502 错误是下游的问题。您可能正在使用 nginx 作为反向代理,并且您要转发到的服务失败了。

就我而言,我使用 nginx 将流量转发到使用 uwsgi 的 docker 实例。所以我需要在我的 uwsgi 配置中增加 'buffer-size' 参数。但是您的具体解决方案将取决于您转发到的服务。