update tutorial node framework ejemplos actualizar javascript node.js express

javascript - tutorial - Ejecutar mĂșltiples aplicaciones Node(Express) en el mismo puerto



node js vs php (3)

Podrías ejecutarlos como aplicaciones separadas escuchando diferentes puertos y luego tener un proxy (como https://github.com/nodejitsu/node-http-proxy/ ) sirviendo todo en 8080 dependiendo de la URL solicitada.

me gusta:

var options = { router: { ''foo.com/baz'': ''127.0.0.1:8001'', ''foo.com/buz'': ''127.0.0.1:8002'', ''bar.com/buz'': ''127.0.0.1:8003'' } };

Funciona como un encanto para mí ( http://nerdpress.org/2012/04/20/hosting-multiple-express-node-js-apps-on-port-80/ ). No estaba tan interesado en montarlos como sub-aplicaciones, como se sugirió en los comentarios porque quería que se ejecutaran de forma independiente ...

Tengo varias aplicaciones Node (compilación en el marco Express).

Ahora los he puesto así -

  • /var/www/app1
  • /var/www/app2
  • /var/www/app3

Ahora quiero ejecutar estas 3 aplicaciones en el mismo puerto (digamos 8080). Es eso posible ?

Una cosa a tener en cuenta es que cada aplicación tiene rutas comunes como estas:

  • app.get(''/'', func...);
  • app.get(''/about'', func...);
  • app.post(''/foo'', func...);
  • app.post(''/bar'', func...);

Básicamente, quiero hacerlo como se puede hacer con la configuración de Apache / PHP.

Entonces con una pila LAMP cuando tienes -

  • /var/www/app1
  • /var/www/app2
  • /var/www/app3

Puede acceder fácilmente a ellos desde diferentes aplicaciones desde:

  • localhost/app1
  • localhost/app2
  • localhost/app3

Puede crear una aplicación principal (por ejemplo, aplicación) paralela a sus aplicaciones y hacer que inicialice las aplicaciones secundarias (en su caso, aplicación1, aplicación2, aplicación3) usando app.use ('''', require (''./ app1 / yourApp.js '').

Todas sus aplicaciones (app1, app2, app3) necesitan crear aplicaciones y exportarlas usando var app = module.exports = express (); No necesita crear una instancia de servidor o llamar a app.listen en todas las subapps; todas las sub-aplicaciones pueden ser servidas a través del puerto de escucha de la aplicación principal.


Puede usar app.use() :

app .use(''/app1'', require(''./app1/index'').app) .use(''/app2'', require(''./app2/index'').app) .listen(8080);