我正在开发一个相当大的Rails 3项目,默认情况下在localhost:5000上运行以进行开发。我目前正在将我们的网络服务器从独角兽迁移到美洲豹。但是,当我运行我的开发服务器时,我经常遇到这些错误:
16:11:39 web.1 | 2015-07-02 16:11:39 -0500: HTTP parse error, malformed request (): #<Puma::HttpParserError: Invalid HTTP format, parsing fails.>
16:11:39 web.1 | 2015-07-02 16:11:39 -0500: ENV: {"rack.version"=>[1, 1], "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>true, "rack.multiprocess"=>false, "rack.run_once"=>false, "SCRIPT_NAME"=>"", "CONTENT_TYPE"=>"text/plain", "QUERY_STRING"=>"txtAirPlay&txtRAOP", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"2.11.2", "GATEWAY_INTERFACE"=>"CGI/1.2", "REQUEST_METHOD"=>"GET", "REQUEST_PATH"=>"/info", "REQUEST_URI"=>"/info?txtAirPlay&txtRAOP"}
16:11:39 web.1 | ---
研究表明,这是因为OS X Yosemite使用端口5000进行AirPlay流式传输。我正在寻找一种从stdout中删除这些错误的方法。
有没有办法可以默默拒绝这些请求,或者只是简单地从我的标准输出中过滤掉它们?我很担心我在这噪音中错过了重要的信号。