Laravel echo server con socket.io show 404 bloqueado por CORS
Estoy tratando de utilizar el servidor de eco laravel combinado con socket.io para mis aplicaciones de chat. Pero muestra un error que decía
Cuando intento en mi dispositivo local, el servidor funciona bien, puede activar y escuchar. Pero cuando alojo en mi vps en el servicio AWS EC2, muestra un error como el que mencioné anteriormente. Llevo 2 dias atascado sin saber como solucionarlo. Estoy usando ubuntu 20.04, servidor web nginx, npm laravel-echo-server 1.6.2 y socket.io para la versión de cliente 2.4. ya permití el puerto que estoy usando en mi servidor
Aquí está mi laravel-echo-server.json
{
"authHost": "https://domain",
"authEndpoint": "/broadcasting/auth",
"clients": [],
"database": "redis",
"databaseConfig": {
"redis": {
"redis": {
"host":"127.0.0.1",
"port":"6379"
}
},
"sqlite": {
"databasePath": "/database/laravel-echo-server.sqlite"
}
},
"devMode": true,
"host": null,
"port": "6002",
"protocol": "http",
"socketio": {},
"secureOptions": 67108864,
"sslCertPath": "",
"sslKeyPath": "",
"sslCertChainPath": "",
"sslPassphrase": "",
"subscribers": {
"http": false,
"redis": true
},
"apiOriginAllow": {
"allowCors": true,
"allowOrigin": "https:domain, http://localhost:8080",
"allowMethods": "GET, POST",
"allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-Id"
}
}
Y aquí está la configuración de bloqueo de mi servidor
server {
server_name domain.com www.domain.com;
root /var/www/domain/public;
index index.html index.htm index.php;
location / {
# try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot}
server {
if ($host = www.domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name domain.com www.domain.com;
return 404; # managed by Certbot
location /socket.io/ {
proxy_pass http://localhost:6002/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
Aquí está mi código de cliente
window.Echo = new Echo({
broadcaster: "socket.io",
host: "https://back-lms.gamifindo.com:6002",
});
Cualquier ayuda sería apreciada. ¡Gracias de antemano!
Mostrar la mejor respuesta