要在Ubuntu上的Apache2中支持WebSocket,您需要安装并配置mod_proxy_wstunnel模块。以下是详细步骤:
sudo apt-get update
sudo apt-get install apache2
mod_proxy和mod_proxy_wstunnel模块。运行以下命令:sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_wstunnel
sudo systemctl restart apache2
/etc/apache2/sites-available/000-default.conf文件(或者您正在使用的其他虚拟主机配置文件):sudo nano /etc/apache2/sites-available/000-default.conf
<VirtualHost>标签内添加以下配置:<Location "/websocket">
ProxyPass "ws://your-websocket-server-address:port/"
ProxyPassReverse "ws://your-websocket-server-address:port/"
</Location>
将your-websocket-server-address和port替换为您的WebSocket服务器地址和端口。
保存并关闭文件。
重新启动Apache2服务以应用更改:
sudo systemctl restart apache2
现在,Apache2已经支持WebSocket,并将通过/websocket路径代理WebSocket连接。您可以通过访问http://your-apache-server-address/websocket来测试WebSocket连接。