托pipe超过50个网站的Node.js后端(堆栈:永远,快递,Nginx和我们的encryption)

我打算使用Node.js Express服务器托pipe多个网站(s?)。 为网站的根目录中的每个网站创build一个server.js文件是不是很好?

例如/var/www/example2.com/server.js.

示例server.js:

 const express = require('express') const app = express() const port = 3000 // 1 port for each website app.get('/', (request, response) => { response.send('Hello from Express!') }) app.listen(port, (err) => { if (err) { return console.log('something bad happened', err) } console.log(`server is listening on ${port}`) }) 

与规则开始每个服务器的Cronjob – 就像一个魅力

 #!/bin/sh export NODE_ENV=production export PATH=/usr/local/bin:$PATH for line in $(find /var/www/*/server.js); do forever start $line > /dev/null done 

是的,所有的网站都需要不同的server.js ,因为它们都可能处理不同的请求/具有不同的API /不同的路由。

此外,如果您必须重新启动特定网站的服务器,那么如果只使用一个server.js ,那么在重新启动期间,所有网站都将停机,而如果所有网站都有不同的server.js ,则需要更改。