Apache 通过CERTBOT使用SSL的ZeroMQ WebSocket

Apache 通过CERTBOT使用SSL的ZeroMQ WebSocket,apache,ssl,websocket,zeromq,wss,Apache,Ssl,Websocket,Zeromq,Wss,我有一个服务器端应用程序,它在端口443上承载一个https安全网页,还需要承载两个额外的WebSocket。其中一个WebSocket将通过tcp直接与我的程序“workers”通信(稍后我将单独处理添加安全性的问题)。另一个websocket需要是安全的,并且客户端可以在wss://mydomain.com. 问题是我正在使用certbot,据我所知,certbot只会将ssl证书放在端口443上,该端口已经被我的apache2 Web服务器占用 我正在用php(不是tomcat)和zero

我有一个服务器端应用程序,它在端口443上承载一个https安全网页,还需要承载两个额外的WebSocket。其中一个WebSocket将通过tcp直接与我的程序“workers”通信(稍后我将单独处理添加安全性的问题)。另一个websocket需要是安全的,并且客户端可以在wss://mydomain.com. 问题是我正在使用certbot,据我所知,certbot只会将ssl证书放在端口443上,该端口已经被我的apache2 Web服务器占用

我正在用php(不是tomcat)和zeromq创建WebSocket。我尝试在apache服务器上使用代理,例如:

ProxyPass/wss ws://127.0.0.1:500

并在端口500上运行我的websocket,但我尝试的所有操作都始终未连接,或返回ERR_SSL_PROTOCOL_ERROR错误或ERR_NETWORK_uuauthentication_INVALID(或某些此类错误表示我的SSL证书无效)


我还尝试将证书扩展到其他端口。什么都没用

事实证明,我可能正确设置了代理传递,但我尝试将php ZeroMQ套接字服务器端连接到浏览器WebSockets客户端。这些似乎不兼容。我切换到nodejs服务器和socket.io sockets作为浏览器,所有的麻烦都烟消云散了。Socket.io通过服务器上的同一端口自动代理所有WebSocket。所以我并不认为添加ssl太难,尽管我还没有尝试过。Nodejs似乎非常适合于套接字,因为它天生就是异步的。io套接字既可以用作发布/订阅套接字,也可以用作任何其他类型的套接字(尽管除了发布/订阅之外似乎没有人对任何东西感兴趣),nodejs有一个ZeroMQ库。