Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

869
Visualizações
Laravel-Websockets, Nginx, Docker, Apache Mesos y más en esta pila: error 404

Cuando configuramos laravel-websockets localmente en docker, todo funcionó maravillosamente; sin embargo, cuando todo se puso a prueba, surgieron problemas. En consecuencia, tenemos que dividir nuestro sitio principal en un servidor y el servidor websocket en un servidor diferente. Todos estos sitios están en una red interna corporativa y no usan SSL.

Entonces, la aplicación principal es Laravel 6 que se ejecuta en Centos, Apache 2.4 y PHP 7.3. Puede conectarse al servidor websocket, pero cada vez que laravel transmite un evento, obtenemos un error 404 para este punto final:

apps/XXXXXX/events?auth_key=XXXXXXX&auth_signature=XXXXXXX&auth_timestamp=XXXX&auth_version=1.0&body_md5=XXXXX

El servidor websocket es Centos, PHP 7.3, Nginx 1.8 configurado como proxy inverso utilizando el archivo conf de ejemplo de spaties/behindcodes.

 map $http_upgrade $type { default "web"; websocket "ws"; } server { listen 80; server_name XXXXXXXXX; root /opt/rh/rh-nginx18/root/usr/share/nginx/www/public; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff"; index index.html index.htm index.php; charset utf-8; location / { try_files /nonexistent @$type; } location @web { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } error_page 500 502 503 504 404 /index.php; location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; } location @ws { proxy_pass http://127.0.0.1:6001; proxy_set_header Host $host; 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; } location ~ /\.(?!well-known).* { deny all; } }

Todo mi equipo es nuevo en nginx, por lo que pensamos que probablemente haya un problema allí u otra cosa que hayamos configurado incorrectamente. Sabemos que nuestros eventos y la transmisión dentro de la aplicación principal de laravel son correctos, porque funcionó cuando todo se ejecutaba en un solo clúster de Apache. Nuestro problema era que la empresa no abriría un puerto en el firewall que no sea 80 y 443. Estamos optando por dividir el tráfico en 80 con nginx según la documentación de beyondcode.

Tiene alguna idea sobre esto? Estamos perdidos. ¡Gracias a todos!

Editar:

Debo agregar que estamos usando Laravel Echo con Pusher.JS para el front-end:

 import Echo from 'laravel-echo'; window.Pusher = require('pusher-js'); window.Echo = new Echo({ broadcaster: 'pusher', key: process.env.MIX_PUSHER_APP_KEY, wsHost: 'XXXXXXXXXX', wsPort: 80, disableStats: true });
over 4 years ago · Santiago Trujillo
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda