1
resposta

colocando o sistema node em produção

Bom dia,

Eu terminei a minha aplicação node com express e gostaria de publica-la em um servidor nginx.

Eu consegui fazer o nginx redirecionar a porta 8000 para a 3000 do node. Portanto quando entro no site 192.168.200.136:8000 a aplicação é aberta.

Porém, apenas os arquivos estáticos são carregados. As urls da api rest retornam erro 502 (Bad gateway)

POST http://192.168.200.136:8000/autenticate 502 (Bad Gateway)

Alguém sabe o que poderia ser o problema?

rota:

module.exports = function(app) {

    var api = app.api.auth;
    app.post('/autenticate', api.autenticate);
    app.use('/*', api.checkToken);
};

configuração do express:

var express = require('express');
var consign = require('consign');
var bodyParser = require('body-parser');
var path = require('path');

var app = express();

app.set('secret', 'homemavestruz'); 
app.use(express.static('./public'));
app.use(bodyParser.json());

consign({cwd: 'app'})
    .include('models')
    .then('models/hourmeter')    
    .then('api')
    .then('api/hourmeter')    
    .then('routes/auth.js')
    .then('routes')
    .then('routes/hourmeter')    
    .into(app);

module.exports = app;

site do nginx:

server {
        listen 8000 default_server;
        server_name www.example2.com;

        location = /favicon.ico { access_log off; log_not_found off; }


        location /static {
                autoindex on;
                root /var/www/gprs/public;
        }

        location / {
                proxy_pass http://localhost:3000;
        }
}
1 resposta

Oi Felipe, tudo bem ?

Acho que a galera não conseguiu te ajudar muito com isso, talvez não seja algo muito comum.

Contudo sugiro que você use o Heroku que é um cara que vai apenas pegar seu código e já vai deployar para você, dá uma olhadinha se você tem interesse :

https://heroku.com/