Puma服务器日志错误

时间:2015-03-06 15:24:31

标签: ruby-on-rails angularjs puma

我有一个AngularJS Web应用程序向Puma服务器中运行的Rails API发送请求。

我在我的美洲狮错误日志中每天看到一次或两次此错误:

2015-02-26 23:26:41 +0000: HTTP parse error, malformed request (): #<Puma::HttpParserError: Invalid HTTP format, parsing fails.>
2015-02-26 23:26:41 +0000: ENV: {"rack.version"=>[1, 2], "rack.errors"=>#<File:/home/ubuntu/env/production/www/yanpyapi/log/puma.stderr.log>, "rack.multithread"=>true, "rack.multiprocess"=>false, "rack.run_once"=>false, "SCRIPT_NAME"=>"", "CONTENT_TYPE"=>"text/plain", "QUERY_STRING"=>"", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"2.10.1", "GATEWAY_INTERFACE"=>"CGI/1.2"}

我想我的代码中有错误。不确定。有什么方法可以确定在哪里?

2 个答案:

答案 0 :(得分:4)

可能是你在某处使用ssl。在我的例子中,我使用http://host.com(unsecure)和wss(安全),它给了我这个错误。当它们都匹配时没有错误。所以将它改为http和ws或https和wss。希望这是你的情况。

答案 1 :(得分:1)

  

有什么方法可以确定在哪里?

Fork puma存储库并向methods called parse_error添加其他日志记录(尝试记录所有请求正文)。使用这种方式,您可以找到导致问题的请求并进行调查。