Я пытаюсь установить соединение между NGINX proxy_pass, идущим к плагину rabbitmq-mqtt, и, похоже, возникают проблемы при разборе на стороне mqtt.Вот мои конфигурации и журнал
Конфигурация Nginx:
location /mqtt {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://rabbitmq;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
Журнал Nginx:
Sep 25 14:31:05 coreOS rkt[6174]: 2019/09/25 06:31:05 [error] 1158#1158: *2693 upstream prematurely closed connection while reading response header from upstream, client: 192.168.10.36, server: localhost, request: "GET /mqtt HTTP/1.1", upstream: "http://192.168.4.10:1883/mqtt", host: "domain.com:80"
Sep 25 14:31:05 coreOS rkt[6174]: 2019/09/25 06:31:05 [error] 1158#1158: *2693 open() "/usr/share/nginx/html/50x.html" failed (2: No such file or directory), client: 192.168.10.36, server: localhost, request: "GET /mqtt HTTP/1.1", upstream: "http://192.168.4.10:1883/mqtt", host: "domain.com:80"
Sep 25 14:31:05 coreOS rkt[6174]: 192.168.10.36 - - [25/Sep/2019:06:31:05 +0000] "GET /mqtt HTTP/1.1" 404 153 "-" "-" "-"
И, наконец, журнал rabbitmq:
Sep 25 14:31:04 coreOS rkt[15805]: [1722983.304432] rabbitmq[6]: 2019-09-25 06:31:04.937 [debug] <0.2287.0> MQTT accepting TCP connection <0.2287.0> (192.168.4.10:34760 -> 192.168.4.10:1883)
Sep 25 14:31:04 coreOS rkt[15805]: [1722983.304778] rabbitmq[6]: 2019-09-25 06:31:04.937 [debug] <0.2285.0> Supervisor {<0.2285.0>,rabbit_mqtt_connection_sup} started rabbit_mqtt_reader:start_link(<0.2286.0>, {acceptor,{0,0,0,0,0,0,0,0},1883}) at pid <0.2287.0>
Sep 25 14:31:05 coreOS rkt[15805]: [1722983.327388] rabbitmq[6]: 2019-09-25 06:31:04.938 [error] <0.2287.0> MQTT cannot parse frame for connection '192.168.4.10:34760 -> 192.168.4.10:1883', unparseable payload: <<"GET /mqtt HTTP/1.1\r\nHost: domain.com:80\r\nX-Real-IP: 192.168.10.36\r\nX-Forwarded-For: 192.168.10.36\r\nUpgrade: websocket\r\nConnection: upgrade\r\nOrigin: https://domain:80\r\nSec-WebSocket-Key: YlK/aYU9S5G5Aaw/wlIrOw==\r\nSec-Websocket-Version: 13\r\nSec-Websocket-Protocol: mqtt\r\n\r\n">>, error: {{badmatch,<<"T /mqtt HTTP/1.1\r\nHost: domain:80\r\nX-Real-IP: 19">>}, [{rabbit_mqtt_frame,parse_frame,3,[{file,"src/rabbit_mqtt_frame.erl"},{line,104}]},{rabbit_mqtt_reader,parse,2,[{file,"src/rabbit_mqtt_reader.erl"},{line,327}]},{rabbit_mqtt_reader,process_received_bytes,2,[{file,"src/rabbit_mqtt_reader.erl"},{line,276}]},{gen_server2,handle_msg,2,[{file,"src/gen_server2.erl"},{line,1056}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,249}]}]}
Есть ли какие-либо ошибки в конфигурации nginx?