Quindi ho cercato di farlo funzionare 2 giorni e sono bloccato. Questa è la prima volta che configuro un server per i binari che utilizza NodeJS + Socket IO. Sono un noob con NGINX e Unicorn. Fondamentalmente la parte NodeJS + SocketIO della mia app spingerà i messaggi agli utenti che sono connessi alla mia app. Questo è il mio nginx.confConfigurazione NGINX per funzionare con Socket.IO
server{
listen 80 default;
root /home/deployer/saigon/public;
try_files $uri/index.html $uri @unicorn;
location /sockets {
proxy_pass http://localhost:3210;
}
location @unicorn {
proxy_pass http://localhost:3000;
}
}
E nella mia production.rb, ho configurato l'url cui l'utente dovrà inviare il messaggio per ricevere un messaggio/da
SOCKET_IO_URL ='http://localhost:8080/sockets
Perché 8080? Uso Vagrant per inoltrare 8080 -> 80
Ho provato ad accedere a http://localhost:8080/sockets e sono riuscito a ottenere il messaggio di benvenuto del socket. Ho guardato il mio log del server NodeJS e stava ricevendo messaggi ok. Tuttavia, quando si tratta di trasmettere ..... semplicemente non lo fa. Qualcuno ha mai avuto questo tipo di app per lavorare con il set up che sto cercando di fare? Dovrei semplicemente andare con Apache + Unicorn?
'
quindi praticamente presa/presa.io devo rimanere nella cartella principale quindi .... il che significa che devo sapere quale richiesta sta andando a rotaie e quale sta andando a socket io quando raggiunge root? = ___ = argh – denniss
Per ora si. Se possibile, puoi utilizzare invece un percorso sottodominio. http://socket.domain.com/. Questo non ha funzionato per me perché non volevo spendere più denaro su un certificato SSL per un sottodominio. –
@denniss Ho aggiornato la mia risposta con una soluzione alternativa. Continuo a scavare per capire se questo è il disegno o un bug da correggere. –