如何从 apache2 容器反向代理到使用 websockets 的 emqx 容器?

How to reverse proxy from apache2 container to emqx container that uses websockets?

提问人:MijatTomić 提问时间:9/23/2023 更新时间:9/23/2023 访问量:18

问:

我正在从 NGINX 切换到 Apache2。 我在 Docker 容器中有 NGINX 服务器,它只监听端口 80 和 443,并使用以下配置将 /mqtt 重定向到 emqx(MQTT):

    proxy_pass http://emqx_2:8083;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    }

而且效果很好。 现在我必须切换到 Apache2,它也在 docker 容器中,它也只侦听端口 80 和 443。 我尝试了这个 Apache2 配置:

   ProxyPass /mqtt http://emqx_2:8083
   ProxyPassReverse /mqtt http://emqx_2:8083 

但是当我转到我的页面时,我得到“WebSocket 连接到'ws://staging.booky.tttech.com/mqtt'失败”

我已经安装了这些模块: 代理、proxy_http、proxy_wstunnel、SSL

Nginx、apache 和 emqx 容器在同一个 docker 网络中。

我已经尝试了很多方法,但无济于事。 欢迎任何帮助。

docker Apache nginx emqx

评论


答: 暂无答案