2015-05-31 11 views
5

Ho provato a utilizzare vm gestito per eseguire un server socket Web sulla porta 3000 ma posso collegarmi solo tramite l'ip dell'istanza e non dal mio dominio o dominio "appspot" .Porta Websocket su google gestito vm

Quando accedo l'applicazione sulla porta 80 ottengo la risposta giusta che l'applicazione invia sulla porta 8080.

mia app.yaml:

network: 
    forwarded_ports: 
    - 3000 

handlers: 
- url: /.* 
    script: server.js 

ho anche attivato la porta sul firewall a 0.0.0.0/0.

Come posso risolvere questo problema?

risposta

3

Questo comportamento è attualmente previsto per i server front-end appspot e domini personalizzati. Sfortunatamente, IP-of-instance è ciò di cui avrai bisogno per ora, sebbene ti raccomando caldamente di dare il via allo relevant public issue tracker feature request thread, in modo che abbia una priorità più alta e acceleri l'aspetto di una soluzione dalla pipeline.

+0

Quindi adesso non c'è modo di utilizzare websocket su vm gestito senza inviare il client a una macchina specifica? –

+0

Come si può vedere dal testo di richiesta della funzione, e come tu stesso hai osservato, mentre le porte possono essere aperte sull'istanza, i front-end dell'appspot e del dominio personalizzato non sembrano inoltrare quelle porte. È possibile implementare un servizio rapido che cerca gli IP dell'istanza prima di connettersi tramite tali IP, ma l'unico risultato è che è improbabile che i certificati SSL vengano convalidati quando ci si connette in questo modo (a meno che non si inseriscano slot SNA per estendere il certificato per ciascuno dei IP di istanza dinamica con cui potresti finire) – Nick

+0

Questo è dire, sì, tu sei corretto, per ora, anche se sono sicuro che questo è stato lavorato con priorità dal team di prodotto VM gestite, come è già successo prima e ha già un thread di tracciamento di problemi pubblici con diverse stelle. – Nick