![](/img/trans.png)
[英]React Native with Laravel Echo and Socket.io no response
[英]socket.io laravel echo not working in production in ubuntu
我正在使用 socket.io 和 laravel 回顯服務器,在服務器上安裝了 Redis 和 SSL,但是 socket.io 文件沒有加載到生產環境中 ubuntu 服務器如果我的本地 88239478039 不需要任何配置,那么一切正常我還允許 UFW 6001 端口。
這是我的 laravel-echo-server.json 文件。
{
"authHost": "https://flowerful.initialengine.com",
"authEndpoint": "/broadcasting/auth",
"clients": [
{
"appId": "bb6e18dd7fd2e7aa",
"key": "c52b04fae249d3cb303b317b281b1599"
}
],
"rejectUnauthorized": false,
"database": "redis",
"databaseConfig": {
"redis": {},
"sqlite": {
"databasePath": "/database/laravel-echo-server.sqlite"
}
},
"devMode": true,
"host": null,
"port": "3001",
"protocol": "https",
"socketio": {},
"secureOptions": 67108864,
"sslCertPath": "/etc/letsencrypt/live/flowerful.initialengine.com/fullchain.pem",
"sslKeyPath": "/etc/letsencrypt/live/flowerful.initialengine.com/privkey.pem",
"sslCertChainPath": "",
"sslPassphrase": "",
"subscribers": {
"http": true,
"redis": true
},
"apiOriginAllow": {
"allowCors": true,
"allowOrigin": "https://flowerful.initialengine.com",
"allowMethods": "GET, POST",
"allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-Id"
}
}
我在不同的門戶網站上搜索並獲得一些幫助,然后我應用了以下一些內容。
laravel-echo-server init
並創建一個配置文件我腦海中的某些事情可能正在發生。 我安裝的虛擬主機可能是 apache2 不允許域在 6001 端口上運行
URL 不工作。
https://flowerful.initialengine.com:6001/socket.io/?EIO=3&transport=polling&t=NLFfgwB
我認為您應該為laravel-echo-server
配置生成並設置帶有.cert
和“.key”擴展名的正確 SSL 文件,如下所示:
"sslCertPath": "/{path_of_ssl}/flowerful.initialengine.com.cert.combined",
"sslKeyPath": "/{path_of_ssl}/flowerful.initialengine.com.key",
就我而言,僅關閉了端口 6001。 檢查服務器是您端口上的項目服務:
curl -I localhost:your_port_here
如果您收到 http 標頭,則表示一切正常,您只需要打開端口即可。
對於開放端口:
iptables -I INPUT -p tcp --dport 6001 --syn -j ACCEPT
service iptables save
如果服務器上沒有端口問題那么你可以做這個我個人的經驗測試。
我個人會做的是使用 Nginx 服務器作為反向代理。 這樣您就可以通過 Nginx 安裝 SSL 證書,然后將流量代理到 Laravel 回顯服務器。
代理規則如下所示:
location /ws/{
proxy_pass http://127.0.0.1:6001/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $remote_addr;
}
然后,與其在前端使用https://your_domain:6001
,不如使用https://your_domain/ws
,它會在內部將流量代理到 echo 服務器。
讓我知道事情的后續!
如果您想了解更多關於制作的信息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.