ruby-on-rails-3 - Heroku 和 Rails 3 的零星 400 错误请求错误 nginx/0.7.67

标签 ruby-on-rails-3 heroku nginx http-status-code-400

更新:此错误似乎是针对 Chrome 的浏览器。我已经在 Firefox 和 IE 中点击了大约 50 次链接,但我似乎无法导致它。此外,一旦它发生,我可以切换到 FF 或 IE,它会在这两个上正常工作。

我在 heroku 上的 Rails 3 应用程序中有一个特定页面,可以正常加载一段时间。我可以点击同一个页面,它加载没有问题。但是在一定数量的加载之后,它突然开始给我一个 400 Bad Request Error 并且低于它的 nginx/0.7.67。

它发生一次后,每次加载页面时都会出现 400 错误。但是,如果我将应用程序单独放置一段时间,例如过夜,该页面会在早上再次运行一小段时间。但是如果我点击页面几次,它又开始给我这个错误。

这不是本地发生的事情,所以它似乎必须是一个heroku问题。

我也尝试重新启动 heroku 但这没有帮助。唯一似乎有帮助的事情就是给它一些休息时间。

就错误而言,heroku 日志没有给我任何新信息。一切似乎都运行良好,然后我得到一条以 727 | 结尾的行。 https | 400,它就停止了。

如果有帮助,我正在使用 https。

完整的错误 heroku 日志是:

[33m2011-07-02T15:25:59+00:00 heroku[nginx]: <-[0m GET /matters/show/34 HTTP/1.1 | 10.212.125.194 | 727 | https | 400

如果您有想法,请告诉我此页面中的哪些代码将有助于解决此问题。

最佳答案

因此,经过与 Heroku 支持人员的长时间反复交流后,我们终于找到了问题所在。我在我网站的各个地方使用数据表,并使用 cookie 来存储用户状态设置。随着用户在网站上导航,该 cookie 越来越长,直到我的 header 超过 NGINX (8K) 允许的最大 header 大小。

解决方案是删除/简化该 cookie 或从 nginx Heroku (bamboo) 切换到不使用 nginx (cedar) 的 Heroku 堆栈。

关于ruby-on-rails-3 - Heroku 和 Rails 3 的零星 400 错误请求错误 nginx/0.7.67,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6557881/

相关文章:

postgresql - 将 memcached 放在数据库或 Web 服务器实例上?

node.js - 如何在具有多个 Node 和 socket.io-redis 的 socket.io 中检查套接字是否处于事件状态(已连接)

ruby-on-rails - 为什么 Ruby on Rails 专业人士不使用脚手架?

html - form_tag 内的 form_tag - 在 rails 中

node.js - 错误 find-up@4.1.0 : The engine "node" is incompatible with this module. 预期版本 ">=8"。 Ember js + Heroku 部署

ruby-on-rails - 如何重置我的 Git/Rails 3.1 项目中的所有 Heroku

ruby-on-rails - 如何让 SSL 与 Rails、AWS Elastic Beanstalk 和 Cloudflare 一起工作

ruby-on-rails - 如何在 Rails 3 上拦截 ActionMailer 的消息?

sql - 如何查询具有 3 个标签的事件?

java - 访问Heroku端点-Spring Boot App 503服务不可用