Развертывание нескольких веб-приложений на одном сервере

Я думаю о развертывании нескольких (и разных) веб-приложений на одном сервере, используя следующую схему:

www.mydomain.com/app1

www.mydomain.com/app2

Это хорошая практика? Есть рекомендации?


person hectorsq    schedule 21.10.2008    source источник


Ответы (6)


Я не вижу веских причин, почему вы не должны не делать это таким образом. В конце концов, не каждый веб-сайт посвящен только одной задаче или приложению. Другой подход заключается в использовании поддоменов, например:

app1.mydomain.com
app2.mydomain.com

Например, их используют Yahoo и Google. Тем не менее, подход с использованием папок — хороший способ настроить и запустить все для тестирования.

person Nicholas Flynt    schedule 21.10.2008

Одна из причин — если вы хотите поддерживать SSL-соединения с вашим веб-сервером.

Если вы используете подход на основе папок, у вас не будет проблем с SSL-сертификатами.

Если вы выберете метод поддомена (app1.mydomain.com, app2.mydomain.com и т. д.), вам, вероятно, понадобится подстановочный SSL-сертификат, который будет дороже, или несколько сертификатов.

Не проблема, если вам не нужен SSL или у вас мало приложений, которые требуют его.

person mhawke    schedule 21.10.2008

Единственным недостатком этого подхода является то, что вам нужно будет установить перенаправление или обратное проксирование, если какое-либо из приложений в конечном итоге переместится на другой сервер, тогда как с субдоменом вам просто нужно изменить запись A для moveapp.domain.com .

Итак, чтобы обеспечить будущее, я бы создал поддомены.

person Vinko Vrsalovic    schedule 21.10.2008

Если все приложения связаны с доменом, я не вижу проблем с этим.

person Michael Brown    schedule 21.10.2008

Вы не упоминаете какую-либо технологию, но если вы используете для этого Java, веб-приложения (по умолчанию) не будут обмениваться информацией о сеансе. Это может быть особенно проблемой, если вы хотите, чтобы пользователь вошел в одно веб-приложение, а также вошел в другое веб-приложение.

Некоторые контейнеры (Tomcat, Glassfish) имеют единый вход, доступный в качестве конкретной функции реализации.

Просто к вашему сведению некоторые последствия решения.

person Will Hartung    schedule 21.10.2008

Мой обычный подход заключается в том, чтобы рассматривать сайт как служащий одной цели. «Одиночный» на самом деле определяет здесь широкую цель и шаблон использования. Если несколько приложений подходят друг другу и синергетически работают для достижения единой цели сайта, то

mydomain.com/app1 и mydomain.com/app2 вполне подходят.

Это значит, что они существуют и живут, чтобы дополнять основной сайт.

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

app1.mydomain.com и app2.mydomain.com

это позволяет вам настроить свою стратегию DNS на разные IP-адреса (веб-серверы/фермы) вместо того, чтобы объединять их вместе в одном пуле.

person icelava    schedule 21.10.2008