要在CentOS上的Apache服务器中支持WebSocket,您需要安装并配置mod_proxy_wstunnel
模块。以下是详细步骤:
sudo yum install epel-release
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
mod_proxy_wstunnel
模块:sudo yum-config-manager --enable remi-php74
sudo yum install mod_proxy_wstunnel
请注意,上述命令中的php74
应替换为您正在使用的PHP版本。例如,如果您使用的是PHP 7.3,则应运行sudo yum install mod_proxy_wstunnel-php73
。
mod_proxy
和mod_proxy_wstunnel
模块:sudo systemctl enable httpd
sudo systemctl start httpd
sudo systemctl restart httpd
/etc/httpd/conf/httpd.conf
文件并添加以下内容:LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
<VirtualHost>
配置块中添加WebSocket代理规则。例如,如果您希望将WebSocket请求代理到本地的WebSocket服务器(运行在端口9001上),则可以添加以下内容:<Location "/websocket">
ProxyPass "ws://localhost:9001"
ProxyPassReverse "ws://localhost:9001"
</Location>
sudo systemctl restart httpd
现在,您的CentOS Apache服务器已支持WebSocket。客户端可以通过访问http://your_server_ip_or_domain/websocket
来建立WebSocket连接。