У меня есть веб-сайт, созданный на сервере unix.
Я работаю в команде еще с двумя разработчиками, которые также работают над сайтом.
Требуется запуск двух или более версий одного и того же сайта из двух разных каталогов на одном и том же unix-сервере. Это связано с тем, что два разработчика будут работать над одной и той же функцией в одних и тех же файлах, и наличие разных версий одного и того же сайта будет мешать друг другу от изменения других файлов разработчиков.
Теперь я скопировал все содержимое веб-приложений веб-сайта в другой каталог на том же сервере.
У меня есть Tomcat, который был ранее установлен, который указывает на исходный каталог веб-приложений.
Что мне нужно сделать, чтобы разместить новый сайт, который я скопировал в новый каталог.
Какие здесь жизнеспособные варианты?
Предлагаю открыть bin/catalina.sh
в текстовом редакторе и начните читать с этого места вниз:
# -----------------------------------------------------------------------------
# Control Script for the CATALINA Server
#
# Environment Variable Prerequisites
#
# Do not set the variables in this script. Instead put them into a script
# setenv.sh in CATALINA_BASE/bin to keep your customizations separate.
bin/setenv.sh
не существует по умолчанию, но это настоящая жемчужина: любые переменные или скриптлеты, которые вы помещаете в такой файл, получают от bin/catalina.sh
, который, в свою очередь, вызывается всякий раз, когда bin/startup.sh
и bin/shutdown.sh
быть вызванным.
JAVA_HOME
. Других может и не быть, вроде CATALINA_OPTS
, который следует предпочесть JAVA_OPTS
где возможно.bin/startup.sh
и bin/shutdown.sh
внимательно, ищем настройки: ни одна из переменных, описанных в bin/catalina.sh
документация должна быть определена. Администраторы и разработчики, которые не знают bin/setenv.sh
имеют тенденцию напрямую изменять сценарии запуска и завершения работы, что является плохой практикой. Переместите эти настройки в bin/setenv.sh
чтобы вы могли лучше отслеживать различия между двумя контейнерами Tomcat.JAVA_HOME
чтобы указать путь к разным установкам Java. Tomcat выполнит $JAVA_HOME/bin/java
, а не версия java, которая есть в вашем PATH
переменная. (если только JRE_HOME
существует, документация, которую я рекомендовал вам прочитать, объясняет разницу) Если каждый Tomcat должен использовать другую версию Java, тогда они должны иметь разные JAVA_HOME
пути. Если они должны использовать одну и ту же версию Java, тогда переменная должна быть одинаковой для обоих.conf/server.xml
и измените порты, которые прослушивает Tomcat. Все экземпляры слова port
которые не находятся внутри блока комментариев (<!-- -->
) необходимо настроить, иначе возникнут конфликты портов.127.0.0.1
) в таком случае. На основе запрошенного URI пусть балансировщик нагрузки или веб-сервер направят трафик на соответствующий Tomcat.