亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在基于 cpanel 的共享主機平臺上設置和運行 PHP WebSocket 服務?

如何在基于 cpanel 的共享主機平臺上設置和運行 PHP WebSocket 服務?

PHP
瀟湘沐 2022-01-14 17:16:30
我在 Ratchet PHP 中創建了一個聊天應用程序。它在使用 WAMP 的本地機器上運行良好。我希望它設置在實時服務器上。在我的服務器上,我有:PHP 支持SSH 訪問端口 9000,為 OutBound 連接打開。子域我沒有的:沒有入站連接的端口。SSH 中沒有 root 訪問權限。說我看不到/編輯iptables我跑了php server.php,它給出了有關服務器已啟動并在端口 9000 上偵聽的成功消息。但是當 HTML 頁面嘗試使用 ws://domain:9000 連接它時,它會遇到錯誤-Firefox 無法與位于 ws://domain.com:9000/ 的服務器建立連接我用谷歌搜索了很多,看來我需要的是一個用于入站連接的端口。但是根據這個答案 ,我需要的是 PHP 支持 Ratchet 在共享主機上工作。任何人都可以解釋我真正需要什么以及是否有任何解決方法如果它在我的服務器上的東西列表中不可用。
查看完整描述

1 回答

?
LEATH

TA貢獻1936條經驗 獲得超7個贊

基本上,沒有

共享主機環境(即具有 VirtualHost 配置、PHP、MySQL 和 CPanel 接口的 Apache)不太可能支持您的 websocket 應用程序。

要使 websocket 正常工作,您需要:

  1. 有一個專用于 websocket 入站連接的端口;或者

  2. 有一個 HTTP/HTTPS 服務器,它知道何時升級連接和代理傳遞到您的 websocket 應用程序。

第一條路由要求服務器允許入站連接到某個端口號。這對托管服務提供商來說是一個潛在的安全問題,因此您的供應商不太可能同意您這樣做。

第二條路線需要 Apache 服務器安裝并啟用mod_proxymod_proxy_wstunnel 。它還要求您使用ProxyPass配置,它根本不能被配置覆蓋.htaccess。

因此,除非您的主機授予您訪問 Apache 主配置的權限(或者會為您應用此類更改),否則您將非常絕望。

建議

要運行您自己的 websocket 服務,您應該考慮使用 Virtual Private Server 服務,例如 Amazon EC2、DigitalOcean VPS。


查看完整回答
反對 回復 2022-01-14
  • 1 回答
  • 0 關注
  • 217 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號