Я пытаюсь развернуть laravel-websockets в службе движка приложения Google и не управляю ssl-сертификатами. Движок приложения "внешний интерфейс Google" будет перенаправлять только порты 80 и 443 в файл пользовательского nginx.conf, который прослушивает порт 8080. Таким образом, после развертывания нет ошибок, и журналы стекового драйвера Google показывают, что служба веб-сокетов принимает подключения, но сервис внешнего интерфейса не показывает мне ничего, ни ошибок, ни успеха. Так чего мне не хватает?
В настоящее время nginx.conf для этой службы:
daemon off;
user root;
worker_processes auto;
error_log /dev/stderr info;
events {
worker_connections 4096;
}
http {
access_log /dev/stdout;
server {
listen 8080;
location / {
proxy_pass http://127.0.0.1:6001;
proxy_read_timeout 60;
proxy_connect_timeout 60;
proxy_redirect off;
# Allow the use of websockets
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
}
и мой файл app.yaml:
runtime: custom
env: flex
service: websockets
manual_scaling:
instances: 1
resources:
cpu: 2
memory_gb: 2
disk_size_gb: 10
runtime_config:
document_root: public
enable_stackdriver_integration: true
readiness_check:
app_start_timeout_sec: 1800
env_variables:
// all basic laravel env here plus:
BROADCAST_DRIVER: pusher
PUSHER_APP_ID: testing
PUSHER_APP_KEY: testing
PUSHER_APP_SECRET: testing
Мой конфиг пушера в файле broadcast.php:
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
'host' => 'my-websockets-service-generated-domain.appspot.com',
'port' => '443',
'scheme' => 'https',
'encrypted' => true
],
],
И, наконец, мои настройки на стороне клиента:
window.Pusher = require('pusher-js')
const echo = new Echo({
authEndpoint: 'my-backend-service-generated-domain.appspot.com/broadcasting/auth',
broadcaster: 'pusher',
key: 'testing',
httpHost: 'my-websockets-service-generated-domain.appspot.com',
httpsPort: 443,
disableStats: true,
encrypted: true
})
Журналы стекового драйвера Google: