google-app-engine - 502 Bad Gateway 错误 - 在从上游读取响应 header 时,上游发送了太大的 header

标签 google-app-engine nginx-config app-engine-flexible google-app-engine-php

我在 Google App Engine 中使用 wordpress。当我创建一个 POST API 时,得到一个错误:“从上游读取响应头时上游发送了太大的头”。返回 502, Bad Gateway, nginx

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

我尝试了 App Engine 标准和灵活环境,但面临同样的问题。

根据此链接:
upstream sent too big header while reading response header from upstream

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

在 App Engine 中,默认的 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;
}

请帮我解决这个问题。

最佳答案

这是预期行为,因为 App Engine 的 nginx 配置使用 4K 的默认 proxy_buffer_size。

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

关于google-app-engine - 502 Bad Gateway 错误 - 在从上游读取响应 header 时,上游发送了太大的 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57294212/

相关文章:

python - 通过 webapp2 处理程序处理 GAE BlobStore 异常

Nginx 轮询负载均衡不如预期

google-cloud-datastore - `gcloud.datastore` 在哪里保留其本地开发状态,我该如何清除它?

NginX GeoIP 模块配置 - Conf 第一行不允许 load_module

javascript - Vuejs 应用程序显示无效的主机 header 错误循环

java - 如何在Google App Engine灵活环境中配置oracle jdk

python - GAE 柔性环境中未添加 X-Appengine-Inbound-Appid header

node.js - 谷歌云平台 : Running several hours scraping script

java - 如何从用于 Java 的谷歌应用引擎调用谷歌应用脚​​本

google-app-engine - 是否可以私下托管 GAME 兼容网格?