2015-02-20 3 views
0

В настоящее время у меня есть два приложения, каждый со своим собственным сервером node.js, это означает, что существует много дублирования, node_modules похожи, конфигурация аналогична.Хостинг двух логически отдельных приложений на одном сервере node.js?

Одно приложение обслуживается в основном домене, а другое - в субдомене.

Самое большое, что сеансы являются отдельными, поэтому я не могу войти в один и войти в оба.

Как создать один сервер для работы на app.example.com и example.com, чтобы они обменивались общими узловыми модулями и конфигурацией, но я могу настроить конкретные потребности для каждого приложения на этом сервере?

+0

Имейте общий каталог модулей и используйте символическую ссылку для него в обоих каталогах приложения, а также используйте Redis или аналогичные для совместного использования сеансов в обоих приложениях. –

+0

Итак, redis - это ключ к совместному использованию сеансов между обоими приложениями. –

+0

Не единственное решение, но я думаю, что это лучшее, так как это очень быстро (потому что все происходит в памяти). Если вам нужно что-то более постоянное, вы можете использовать MySQL. –

ответ

0

Возможно, вы захотите заглянуть в Nginx, это позволит вам подойти к одному из поддоменов по разным портам proxy_pass. Вот такая настройка вам понадобится.

server { 
    listen 80; 
    server_name app.example.com; 
    access_log off; 
    location/{ 
     proxy_pass http://localhost:8080; 
     proxy_set_header Host   $host; 
     proxy_set_header X-Real-IP  $remote_addr; 
     proxy_set_header X-Forwarded-for $remote_addr; 
     proxy_connect_timeout 300; 
    } 
} 
+0

Ницца, я использую nginx и выполняю прокси-сервер моих узлов. Я не думал указывать обе серверы DNS на одно приложение узла, я думаю, это то, что вы получаете. Я думаю, что я просто собираюсь объединить приложения в один, но я бы хотел использовать второе приложение в субдомене, поэтому nginx может мне помочь! –

Смежные вопросы