node-direct — один NodeJS сервер на несколько сайтов
tl;dr
С node-direct можно заливать серверные .js файлы и обращаться к ним так же, как к .php скриптам: example.com/foo.srv.js.
Установка.
npm install -g node-direct
Конфигурация nginx.
location ~ \.srv\.js$ { root <path_to_website_files>; proxy_pass http://localhost:<port>; proxy_set_header X-Requested-File-Path $document_root$uri; }
Запуск.
node-direct --port=<port>
Скрипт foo.srv.js, где
reqиresсозданы сервером express.
module.exports = function(req, res) { const someModule = require('some-module'); res.send('Hello world!'); }
Введение
Когда NodeJS стал более-менее популярным, мне было нелегко осознать, что с ним всё не так просто, как с PHP. Используя последний, можно было создать .php файл, залить его на сервер, обратиться по адресу example.com/путь/имяфайла.php и радоваться. Такая простота развертывания скриптов служила одной из причин, почему "пых" стал таким популярным.
В свою очередь, NodeJS, независимо от сложности приложения, заставляет очень многие вещи делать руками.
- Гоняй каждое приложение на собственном порту
- Определи роуты самостоятельно
- Настрой деплой
- Убедись, что приложение работает и после перезагрузки сервера
- Не забудь сделать так, чтоб при изменении файлов, NodeJS сервер перезагружался










