Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 502网关错误-从上游读取响应标头时,上游发送的标头太大_Google App Engine_Nginx Config_App Engine Flexible_Google App Engine Php - Fatal编程技术网

Google app engine 502网关错误-从上游读取响应标头时,上游发送的标头太大

Google app engine 502网关错误-从上游读取响应标头时,上游发送的标头太大,google-app-engine,nginx-config,app-engine-flexible,google-app-engine-php,Google App Engine,Nginx Config,App Engine Flexible,Google App Engine Php,我正在谷歌应用程序引擎中使用wordpress。当我制作一个POST API时,得到一个错误:“上游发送了太大的头,而从上游读取响应头”。返回502,坏网关,nginx 我在PostAPI中发送的数据(JSON)大约为4kb。如果数据发送低于2kb,API将返回成功 我尝试应用程序引擎标准和灵活的环境,但面临同样的问题 根据此链接: 使用缓冲区修改nginx-app.config文件将解决此问题。但它不起作用 在应用程序引擎中,默认的nginx-App.config如下所示 location

我正在谷歌应用程序引擎中使用wordpress。当我制作一个POST API时,得到一个错误:“上游发送了太大的头,而从上游读取响应头”。返回502,坏网关,nginx

我在PostAPI中发送的数据(JSON)大约为4kb。如果数据发送低于2kb,API将返回成功

我尝试应用程序引擎标准和灵活的环境,但面临同样的问题

根据此链接:

使用缓冲区修改nginx-app.config文件将解决此问题。但它不起作用

在应用程序引擎中,默认的nginx-App.config如下所示

location / {
    try_files $uri /index.php?q=$uri&$args;
}

location ~ ^/wp-admin {
    try_files $uri $uri/index.php?$args;
}
不确定我需要在哪里添加这些代理缓冲区

我尝试在默认位置添加代理缓冲区,如下所示,但没有帮助

location / {
    try_files $uri /index.php?q=$uri&$args;
    fastcgi_buffers 16 16k;
    fastcgi_buffer_size 32k;
    proxy_buffer_size 128k;
    proxy_buffers 4 256k;
    proxy_busy_buffers_size 256k;
}

请帮助我解决此问题。

这是预期的行为,因为应用程序引擎的nginx配置使用默认的代理缓冲区大小,即4K


解决方法是发出累计低于此限制的HTTP头。有一个开放的功能要求增加这一点,但似乎不太可能增加到128K。如果增加到128K是您的用例的唯一解决方案,那么我建议使用它创建一个请求,并包括业务影响,以说明对该功能的需求

谢谢Julie Wang的回复。对不起,我不明白你的变通方法。我甚至尝试过将缓冲区值减少到16k,但没有成功。如前所述,您需要将HTTP头作为一个整体减少到这个4K限制之下。该限制似乎与代理缓冲区大小有关,因此减少到4K应该允许您完成API调用。工程中有一个功能,将增加8k限制,以允许更大的标题块,但可能需要一个多月(或更长时间)才能推出,因此我建议在此之前使用解决方案。我还有两个澄清。1) 实际上,我发送的数据不在HTTP头中,而是在POST API主体中发送的。2) 在灵活的环境中,即使对于3kb左右的数据,我也会遇到这个错误。在标准环境中,即使数据大于1kb,我也会遇到错误。如果新的缓冲区配置与原始post不同,您能否提供新的缓冲区配置?也许配置的其他方面是问题所在。我还注意到,大多数其他错误示例都比提供的要长,如果您仍然遇到错误,您可以提供完整的错误消息吗?实际上,我遇到的问题与http响应有关。我误解了http请求数据。谢谢你的支持,王莉。