无法使用 nginx 调用我的 rails 服务器,得到 Puma::HttpParserError

Can't call my rails server with nginx, got Puma::HttpParserError

我的 nginx / puma 配置有问题。当我启动 rails 服务器并尝试与其交互时,没有任何反应,我的请求卡在浏览器网络中。另外,我在控制台中收到此错误:

HTTP parse error, malformed request (): #<Puma::HttpParserError: Invalid HTTP format, parsing fails.>

我是 运行 端口 3000 上的 ngrok,但即使它不是 运行,我仍然会收到错误消息。

我看到了很多类似的问题(比如 this one 没有答案)但是 none 对我有帮助 :(

这是我的默认配置的一部分:

server {
    listen              80;
    server_name         app.example.com;
    location / {
        proxy_pass      http://app.example.com:9000;
    }
    location /uploads/ {
        proxy_pass      https://example.s3.amazonaws.com/uploads/;
    }
    location /archives/ {
        proxy_pass      https://example.s3.amazonaws.com/archives/;
    }
    location /container/ {
        proxy_pass      https://example.s3.amazonaws.com;
    }
}

这里有什么我忘记检查的吗?我不太习惯 rails,也许我缺少一些基本知识:)

弄清楚发生了什么: 我试图将我的 API 与 angular 前端引擎连接起来,我在这里缺少的是我有一个 oauth conf 可以使用 https 而不仅仅是 http 添加到 angular 环境文件中.

base_url: "http://localhost:3000/",
oauth: "https://localhost:3000/",

它与我的 rails 服务器无关,也与 nginx 无关!