我正在使用Rails 5.1.5。我使用nginx和puma来部署我的应用程序。基本上,我想记录IoT设备发送的所有数据并将该数据存储在一个表中.IoT设备使用TCP与服务器进行通信。所以我使用了nginx的stream
指令与设备进行通信,我想将tcp请求转移到puma进行处理。 Puma只接受http请求,因此会引发跟随错误。
HTTP parse error, malformed request : #<Puma::HttpParserError: Invalid HTTP format, parsing fails.>
我已经确认了nginx.conf文件,如下所示
stream {
log_format main '$time_iso8601 $remote_addr'
'$protocol $status $bytes_sent $bytes_received '
'$session_time $upstream_addr '
'"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';
access_log /var/log/nginx/access.log main;
server {
listen port;
proxy_pass app;
}
upstream app {
server path of puma.sock;
}
}