#php #laravel #nginx #laravel-echo
#php #laravel #nginx #laravel-echo
Вопрос:
я пытаюсь использовать Laravel-Echo-Сервер в своем проекте, в локальном нет ошибки, но когда я размещаю его в RunCloud, сервер Laravel Echo работает, но мой веб-сайт не может подключиться к серверу Laravel Echo.. Я пытаюсь добавить новое пользовательское правило nginx в местоположение.основной, как сказал док laravel echo server, но все равно ошибка
laravel-эхо-сервер.json
{ "authHost": "https://exampledomain.com", "authEndpoint": "/broadcasting/auth", "clients": [], "database": "redis", "databaseConfig": { "redis": {}, "sqlite": { "databasePath": "/database/laravel-echo-server.sqlite" } }, "devMode": false, "host": null, "port": "6001", "protocol": "https", "socketio": {}, "secureOptions": 67108864, "sslCertPath": "path/server.crt", "sslKeyPath": "path/server.key", "sslCertChainPath": "", "sslPassphrase": "", "subscribers": { "http": true, "redis": true }, "apiOriginAllow": { "allowCors": true, "allowOrigin": "*", "allowMethods": "GET, POST", "allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-Id" } }
laravel-echo-setup.js
import Echo from 'laravel-echo'; window.Echo = new Echo({ broadcaster: 'socket.io', host: window.location.hostname ":" window.laravel_echo_port });
dashboard.blade.php (в ENV я установил LARAVEL_ECHO_PORT=6001)
lt;script src="//{{ Request::getHost() }}:{{env('LARAVEL_ECHO_PORT')}}/socket.io/socket.io.js"gt;lt;/scriptgt; lt;script src="{{ url('/js/laravel-echo-setup.js') }}" type="text/javascript"gt;lt;/scriptgt; lt;script type="text/javascript"gt; var i = 0; window.Echo.channel('vehicle-channel') .listen('.App\Events\NewVehicle', function (newVehicle){ i ; console.log(newVehicle.newVehicle); }); lt;/scriptgt;
Пользовательский Nginx RunCloud для моего веб-приложения
webapp.location.main.laravelecho.conf
#the following would go within the server{} block of your web server config location /socket.io { proxy_pass http://localhost:6001; #could be localhost if Echo and NginX are on the same box proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; }
Here some Picture Laravel Echo Server is Running and My Webapps cant connect to socketio.js