standard pricing prices google flexible features engine docs app node.js google-app-engine nginx

node.js - pricing - 502 Bad Gateway con nginx | Google App Engine | Nodo JS



google app engine standard environment (5)

Estoy hospedando la aplicación web en Google Cloud Platform con App Engine y estoy usando ExpressJS y MongoDB, que está alojado en mLab.

Todo funcionó bien hasta el 01/01/2017. Tuve vm: cierto antes y ahora me vi obligado a cambiar el env a flex. Ahora estoy recibiendo 502 errores de pasarela incorrectos con nginx. El motor de aplicaciones no nos permite cambiar el archivo de configuración nginx.

He intentado la sugerencia de este post: Google App Engine 502 (Bad Gateway) con NodeJS pero todavía no funciona.

Por alguna razón, tengo otra aplicación con exactamente la misma configuración en el motor de la aplicación y funciona perfectamente.

Cualquier sugerencia sera muy apreciada. Gracias.



Establecer el anfitrión a 0.0.0.0

El puerto 8080 está configurado por defecto por el motor. De hecho, no puede definir el entorno var PORT ya que está reservado.

Ejecuta el siguiente comando (como lo menciona @sravan)

gcloud app logs read tail

y asegúrate de que se vea así,

[Sun May 27 2018 10:32:44 GMT+0000 (UTC)] serving app on 0.0.0.0:8080

Aclamaciones



Tuve el mismo problema con Express. Lo que lo resolvió para mí fue no proporcionar una dirección IP para la aplicación.

Así que mi antiguo código sería:

var ip = "127.0.0.1"; var port = "8080"; var server = http.createServer(app); server.listen(port, ip);

Esto daría lugar a un 502 en el motor de la aplicación.

Eliminar la ip fue la solución para mí.

server.listen(port);


Un 502 no es necesariamente un error con nginx en sí mismo, puede suceder con mayor frecuencia cuando el proxy nginx no puede comunicarse con el contenedor de su aplicación (generalmente porque su aplicación no se inició). Si obtiene un 502 después de migrar a ''env: flex'', es muy probable que esto se deba a algunos cambios de código necesarios en su aplicación, como se menciona en Actualización a la última versión de App Flexible Flexible Environment Release .

La comprobación de los registros de la aplicación en busca de errores de NPM también ayudará a diagnosticar la razón exacta del inicio fallido.