如何在Apache 2.4的同一个虚拟主机中使WebSocket和Web API一起工作

问题描述

我们的ASP.NET Core Web API项目位于https://demo.myapp.com/api/[CONTROLLER]上,而Websocket位于https://demo.myapp.com/api/ws上。 我们使用以下httpd.conf在CentOS 7 + Apache 2.4上运行它,当前我们无法访问websocket,如何使它们都可访问?

<VirtualHost *:443>
ServerName demo.myapp.com
ServerAlias demo.myapp.com
DocumentRoot /var/www/html
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/requests.log combined

<Location /myapp/api/ws/>
  ProxyPass                 ws://localhost:5000/ws/
  ProxyPassReverse          ws://localhost:5000/ws/
</Location>

<Location /myapp/api/>
  ProxyPass                 http://localhost:5000/
  ProxyPassReverse          http://localhost:5000/
</Location>

SSLCertificateFile /etc/letsencrypt/live/demo.myapp.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/demo.myapp.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/demo.myapp.com/chain.pem

Include /etc/letsencrypt/options-ssl-apache.conf

ProxyRequests off

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)