centos

CentOS Apache如何支持WebSocket

小樊
44
2025-05-19 00:49:48
栏目: 智能运维

要在CentOS上的Apache服务器中支持WebSocket,您需要安装并配置mod_proxy_wstunnel模块。以下是详细步骤:

  1. 安装EPEL和Remi仓库(如果尚未安装):
sudo yum install epel-release
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
  1. 启用Remi仓库中的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

  1. 启用mod_proxymod_proxy_wstunnel模块:
sudo systemctl enable httpd
sudo systemctl start httpd
sudo systemctl restart httpd
  1. 在Apache配置文件中启用WebSocket代理。打开/etc/httpd/conf/httpd.conf文件并添加以下内容:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
  1. <VirtualHost>配置块中添加WebSocket代理规则。例如,如果您希望将WebSocket请求代理到本地的WebSocket服务器(运行在端口9001上),则可以添加以下内容:
<Location "/websocket">
    ProxyPass "ws://localhost:9001"
    ProxyPassReverse "ws://localhost:9001"
</Location>
  1. 保存更改并重新启动Apache服务:
sudo systemctl restart httpd

现在,您的CentOS Apache服务器已支持WebSocket。客户端可以通过访问http://your_server_ip_or_domain/websocket来建立WebSocket连接。

0
看了该问题的人还看了