Как открыть tomcat в браузере

Обновлено: 04.07.2024

В данном документе представлена информация о базовой установке Apache Tomcat 7 на CentOS 7, первоначальной настройке и запуске приложений.

Общие сведения

Архитектура

Установка

В этой главе описана информация о базовой установке Apache Tomcat сервер 7 при помощи менеджера пакетов yum и из файла дистрибутива (с сайта проекта) на сервер CentOS 7. Apache Tomcat сервер – это серверное ПО для исполнения web-приложений, написанных на Java. Поэтому, предполагается, что у вас уже установлена Java Runtime Environment (JRE).

Установка с помощью менеджера пакетов

Проверить, установлен ли уже Apache Tomcat через менеджер пакетов, можно командой:

Установить Tomcat, используя менеджер пакетов, можно следующей командой:

После выполнения этой команды будет установлен сервер Tomcat 7 и все его зависимости. Кроме того, команда создаст пользователя tomcat.

Данное руководство подразумевает установку нескольких дополнительных пакетов, которые помогут управлять web-приложениями. Чтобы установить стандартную root-страницу (tomcat-webapps), менеджер веб-приложений и виртуальных хостов Tomcat (tomcat-admin-webapps), выполните команду:

После этого в каталоге tomcat/webapps появятся веб-приложения ROOT, examples, sample, manager и host-manager.

Установка из файла дистрибутива

В некоторых случаях установка ПО с помощью пакетного менеджера невозможна. Тогда используется способ установки из файла дистрибутива. Общий подход в работе Apache Tomcat остается таким же, но есть ряд отличий в установке и запуске.

Чтобы установить Apache Tomcat сервер, необходимо c сайта проекта (или дистрибутива ПО) взять файл apache-tomcat-7.0.67.zip и распаковать его в папку /home/user/tomcat, а потом перенести в /usr/share/tomcat7

Компиляция из исходного кода

Установка JDBC-драйвера

Неофициальным стандартом, которому следуют программы на языке Java, осуществляя доступ к реляционным базам данных, является JDBC. JDBC – это стандартный API-¬интерфейс, посредством которого Java-программы могут получать доступ к внешним менеджерам ресурсов, главным образом к реляционным базам данных, независящим от менеджера ресурсов способом. То есть Java-приложение, написанное с применением стандартных классов и интерфейсов JDBC, может переноситься на базы данных других производителей реляционных СУБД, если они поддерживают SQL, удовлетворяющий стандарту ANSI.

Далее, нужно добавить следующие строки внутри тега «Context» в файл /usr/shatre/tomcat/conf/context.xml:

Теперь JNDI-ресурс настроен.

После того, как вы разместили jar-файл драйвера в нужном каталоге, и внесли необходимые изменения в файл «context.xml» необходимо перезапустить Apache Tomcat

Настройка

Каталоги и файлы

После установки, в системе будут созданы следующие файлы и каталоги:

  • /usr/share/tomcat/bin: содержит управляющие скрипты;
  • /etc/tomcat: конфигурационные файлы (server.xml, web.xml, context.xml, tomcat-users.xml);
  • /usr/share/java/tomcat: jar-файлы, используемые всеми расширениями Tomcat и веб-приложениями;
  • /var/log/tomcat: log-файлы;
  • /srv/tomcat/webapps: каталог, содержащий веб-приложения (сервлеты и JSP);
  • /var/cache/tomcat/work: рабочий каталог Tomcat, который используется, в первую очередь, при преобразовании JSP-страниц в сервлеты;
  • /var/cache/tomcat/temp: временные файлы.

В каталоге /usr/share/tomcat будут, также, размещены симлинки на указанные каталоги. Путь к основному каталогу Tomcat можно записать в переменную окружения $CATALINA_HOME (export CATALINA_HOME='/usr/share/tomcat/').

Для настройки сервера Tomcat используются следующие конфигурационные XML-файлы, размещенные в каталоге /usr/share/tomcat/conf/:

  • server.xml: Общие настройки сервера (порты, виртуальные хосты и проч.).
  • web.xml: Параметры, общие для ВСЕХ веб-приложений на текущем сервере. Настройки отдельных веб-приложений задаются в их собственных файлах /WEB-INF/web.xml (здесь можно провести аналогию с использованием файла .htaccess в Apache).
  • context.xml: Общие настройки управления контентом.
  • tomcat-users.xml: Список пользователей и групп (ролей).

Внимание: Прежде чем вносить какие-либо изменения в эти файлы, стоит сделать их резервные копии. Также следует обращать внимание на комментарии, которыми снабжены эти файлы

Настройка портов подключений и межсетевого экрана

Настройка портов подключений

Для того, чтобы сменить порт Apache Tomcat, отредактируйте файл конфигурации server.xml в каталоге /etc/tomcat/server.xml. Найдите строку "<Connector port="8080" protocol="HTTP/1.1"" и замените номер порта. Аналогично с портом 8009:

После этого перезапустите Tomcat для того, чтобы изменение настроек вступило в силу.

Настройка межсетевого экрана (firewall)

После установки Tomcat необходимо убедиться, что в файле конфигурации (/etc/firewalld/zones/public.xml) межсетевого экрана открыты порты, по которым будут обращения к серверу web-приложений из браузера. Чтобы открыть порт 8080 (который используется Tomcat по-умолчанию), выполните команду:

И перезагрузите сетевой экран

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

Настройка ролей и прав доступа пользователей

Для управления пользователями и ролями Tomcat используется файл tomcat-users.xml, расположенный в каталоге /usr/share/tomcat/conf. Например, чтобы пользоваться ранее установленным менеджером веб-приложений, необходимо добавить соответствующего пользователя на сервер Tomcat. Для этого нужно отредактировать вышеупомянутый файл, добавив в него данные о пользователе, который получит доступ к manager-gui и admin-gui (ранее установленному интерфейсу). Для этого используйте следующий формат, указав имя и пароль пользователя:

Файл содержит подсказки по его настройке. Чтобы создать, например, пользователя manager, который сможет управлять веб-приложениями через графическую оболочку (предопределенная роль manager-gui), нужно добавить в этот файл запись вида:

Сохраните и закройте файл tomcat-users.xml Обратите внимание, что в Tomcat 7 нет единой роли «manager», а существуют отдельные роли для администрирования:

  • manager-gui - позволяет администрировать через веб-интерфейс;
  • manager-script - позволяет администрировать через скрипты;
  • manager-jmx - позволяет администрировать через JMX прокси;
  • manager-status - дает доступ только к странице статуса сервера.

Например, для развертывания web-приложений через Maven необходимо присвоить пользователю роль «manager-script». В файле tomcat-users.xml описание этой роли будет выглядеть следующим образом:

Настройка переменных среды исполнения

Переменные среды окружения не используются Java-приложением Tomcat – вся настройка переменных происходит в стартовых скриптах. Но в некоторых случаях все же может понадобиться настройка некоторых переменных. Обратите внимание на то, что если у вас установлено несколько JVM, по умолчанию Tomcat попробует использовать OpenJDK, затем пробует JVM от Oracle, а затем иные JVM. Если у вас будут проблемы, связанные с переменными среды исполнения, выполните следующие шаги:

  1. Установите переменную среды CATALINA_HOME и CATALINA_BASE
  2. Установить переменную среды JRE_HOME или JAVA_HOME. Переменная среды используется для указания расположения JRE или JDK. Если определены обе переменные, то используется JRE_HOME.
  3. Остальные переменные среды опциональны: CATALINA_OPTS, JAVA_OPTS, CATALINA_PID, JSVC
  4. Использование скрипта setenv для установки переменных среды (рекомендуется)

Настройка сервера-разработки

Если вы используете Tomcat на сервере разработки и/или тестирования, вам могут быть полезны следующие опции:

Автоматическая перезагрузка страниц

Имеется возможность заставить Tomcat выполнять автоматическую перезагрузку после изменения кода. Нужно добавить атрибут reloadable со значением "true" в элемент <Context> файла conf/context.xml. Это весьма полезно в процессе разработки и отладки сервлетов, но не рекомендуется в процессе постоянной работы web-приложения.

Включение листинга каталогов

Для установки отображения списка файлов в каталогах (листинга), нужно поменять значение атрибута listings с ложного (false) на истинное (true) в блоке настроек сервлета по умолчанию ("default"-servlet) в файле conf/web.xml. Это бывает полезным при разработке и отладке веб-приложений, но не рекомендуется использовать на production-сервере по соображениям безопасности.

Запуск

Запуск и остановка Tomcat

Tomcat-01.jpg

Если вы установили Tomcat с помощью менеджера пакетов, то для запуска сервиса Tomcat введите следующую команду:

Для того, чтобы перезапустить сервис (например, после внесения изменений в настройки), используется следующая команда:

Чтобы сервис Tomcat автоматически запускался на этапе загрузки сервера:


Рисунок N. Приветственная страница Tomcat.

Запуск при установке без использования менеджера пакетов

Запуск Tomcat может быть осуществлен с использованием следующих команд:


Скрипт catalina.sh используется для ручного запуска и остановки сервера Tomcat. Для автоматического запуска можно использовать скрипт:

Завершение работы Apache Tomcat:

Файлы вашего приложения нужно расположить в каталоге /usr/share/tomcat7/webapps, более подробная информация по развертыванию приложений в главе «Запуск приложений».

Менеджер Web-приложений

Tomcat-03.jpg

Рисунок N. Окно авторизации.

Для входа в менеджер web-приложений необходимо воспользоваться теми именем пользователя и паролем, которые были заданы при настройке пользователей и ролей. Web Application Manager используется для управления приложениями Java; он позволяет запускать, останавливать, перезапускать и удалять приложения. Также Web Application Manager позволяет выполнять диагностику приложений (например, обнаруживать утечки памяти). Кроме того, в самом низу этой страницы находится информация о сервере.

Tomcat-04.jpg

Рисунок N Основное окно менеджера web-приложений.

В разделе «Manager» есть ссылка «Server Status», для получения детального описания состояния сервера.

В разделе Applications перечислены веб-приложения, установленные на данном сервере, и есть кнопки для управления ими:

  • Start — запустить приложение;
  • Stop — остановить приложение, при этом сам сервер и остальные приложения продолжат работу;
  • Reload — перезапустить приложение;
  • Undeploy — удалить приложение;
  • Expire sessions with idle >= … minutes — считать веб-сессии пользователей истекшими по прошествии стольки-то минут без активности.

Раздел Deploy предназначен для инсталляции приложения из war-файла.

Diagnostics позволяет найти утечки памяти и принудительно запустить сборку мусора в JVM.

Web Application Manager сам является web-приложением, которое предварительно установлено в Tomcat. Следовательно, для того, чтобы Tomcat мог его использовать, это приложение должно быть запущено и присутствовать в списке приложений. Кроме менеджера web-приложенй (manager), в числе предустановленных часто бывает приложение для управления хостами (host-manager).

Установка и удаление web-приложений

Tomcat-06.jpg

Установка web-приложений

Существует два способа развертывания приложений.

Способ 1. Без использования менеджера приложений (Tomcat Web Application Manager):

  1. Скопировать war-файл в каталог <TOMCAT_HOME>\webapps
  2. Если Tomcat был запущен, то он сам развернет приложение из war-файла через несколько секунд (появится одноименный каталог). Либо самостоятельно перезапустите Tomcat, и он развернёт war.
  3. Проверьте работоспособность приложения, пройдя по соостветствующей ссылке.

Способ 2. С использованием менеджера приложений (Tomcat Web Application Manager):

После этого Tomcat самостоятельно скопирует war-файл к себе в каталог \webapps и развернет его. Web-приложение появится в списке Applications и вы сможете перейти к нему, кликнув по ссылке с соответствующим названием.

Удаление web-приложений Существует два способа развертывания приложений.

Способ 1. Без использования менеджера приложений (Tomcat Web Application Manager):

  1. Выключите Apache Tomcat сервер командой «systemctl stop tomcat»
  2. В каталоге \webapps удалите war-файл и одноименный каталог.
  3. В каталоге \conf\Catalina\localhost удалите одноименный xml.
  4. В каталоге \work\Catalina\localhost удалите одноименный каталог.

Последний шаг необязателен: удаляются временные файлы которые создал Tomcat.

Способ 2. С использованием менеджера приложений (Tomcat Web Application Manager):

Структура каталогов web-приложений

Web-app.jpg

Все web-приложения размещаются в каталоге webapps (/usr/share/tomcat/webapps). Каждое приложение размещается в собственном, одноименном, каталоге с определенной вложенной структурой. Например, для приложения websample структура каталогов должны быть следующей: webapps/websample/WEB-INF/classes. Соответственно, создать эту структуру можно так:

Ваш путь постижения дзена JavaEE не сможет пройти мимо сервлетов Java и их контейнеров. И чем раньше вы разберётесь с тем, как они взаимодействуют – тем легче будет проходить погружение в более тяжеловесные фрэймворки. Предлагаю познакомиться с контейнером под названием Tomcat, посмотрим как он устанавливается, запускается и работает с приложениями, а заодно напишем маленький сервлет для демонстрации идеи их использования.

пример использования tomcat (java servlet)

Tomcat реализует спецификацию сервлетов и является веб сервером. Он умеет «на лету» подхватывать приложения. Начнём с самого начала. А для этого нам его необходимо скачать. Apache предлагают версии сервера как для 32х, так и для 64-разрядных машин. Также можно выбрать для загрузки либо инсталлятор, ло архив с потрохами сервера. Мы выберем второй вариант и разворачивать будем в среде windows. Качаем архив и распаковываем его в папку, желательно поближе к корню диска(c:\Tomcat). Перед запуском необходимо прописать переменные среды CATALINA_HOME и JAVA_HOME. Для этого идём Панель управления->Система-> ->Дополнительные параметры системы

пример использования tomcat (java servlet)

пример использования tomcat (java servlet)

Создаёте новую системную переменную с именем CATALINA_HOME и указываете для неё путь куда вы распаковали tomcat(у меня c:\tomcat). Также, если у вас не было, аналогичным образом создаёте ещё одну переменную JAVA_HOME и указываете где у вас лежит JDK (например C:\ProgramFiles\Java\jdk1.8.0_05). После этого рекомендую перезагрузить систему, иначе tomcat может отказываться запускаться без каких либо видимых причин. После всех манипуляций открываете командную строку, переходите в каталог с tomcat в папку bin, там есть два файла, startup.bat и shutdown.bat. Первый включает, второй выключает наш сервер. Запускаете startup.bat, после чего в отдельном окне должен начаться запуск сервера.

пример использования tomcat (java servlet)

Теперь идём в браузер и открываем адрес localhost:8080 Если всё нормально, вы увидите страницу tomcat’а, на которой есть ссылки на примеры простых сервлетов, туториалы и т.д.

пример использования tomcat (java servlet)

Конфигурация сервера производится с помощью *.xml файлов, находящихся в папке conf в корневом каталоге tomcat. Подробная документация по каждому тэгу есть на сайте Apache. Итак, сервер работает, а что же дальше? Как ему скормить наши страницы?

В корне tomcat есть папка webapps, которая ждёт-не дождётся пока ей кто ни будь не закинет файл с расширением war. war файлы – это специальные, так называемые web archives. Архивы, которые содержат в себе определённую структуру папок и файлов, которая подходит tomcat’у для запуска. Но перед созданием первого рабочего сервлета давайте подключим к IDEA наш сервер. Для этого открываем настройки, находим ApplicationServers, нажимаем + и выбираем сервер Tomcat.

пример использования tomcat (java servlet)

Указываем директории, если IDEсама их не прописала

пример использования tomcat (java servlet)

Жмём ок, apply и создаём новый проект. Не забываем установить галочку WebApplication

Далее даём имя нашему проекту, пусть это будет TestWebProject и видим что IDE уже приготовила для нас необходимую иерархию папок и даже что то набросала в файлы web.xml и index.jsp Файл web.xml является дескриптором проекта, в нём находятся инструкции для сервера о том как правильно его разворачивать. Index.jsp по умолчанию стартовая страница проекта, давайте попробуем что-нибудь написать в неё и запустить.

пример использования tomcat (java servlet)

пример использования tomcat (java servlet)

Хорошо, а теперь давайте напишем наш первый сервлет, добавляющий жизни нашей пробной страничке. Создаём jsp страницу redirect, которая направляет запрос на наш будущий сервлет

пример использования tomcat (java servlet)

Перед тегом <html> пишем <jsp:forward page=”/redirect”></jsp:forward>

пример использования tomcat (java servlet)

Следующим шагом необходимо в файле web.xml прописать так называемые servlet-mapping’и. Это необходимо для того, что бы контейнер «увидел» связь между строкой адреса браузера и страницами нашего проекта. Добавляем следующие строчки перед закрывающим тегом </web-app>

<welcome-file-list> указывает стартовую страницу. Итого мы получили то что запрос приходит на redirect.jsp, от туда перенаправляется в наш сервлет Direct, где к нему добавляются атрибуты(там же можно получить и данные о запросе, протокол, заголовок и т.д.) и перенаправляется на index.jsp

Осталось только оформить вывод отображения. В файле index.jsp видно как с помощью тега <%=%> можно получить данные из запроса и встроить их в html.

пример использования tomcat (java servlet)

Для демонстрации работы приложения осталось запустить проект и открыть localhost:8080/redirect в браузере. Мы видим что при каждом обновлении страницы информация на ней динамически обновляется.

пример использования tomcat (java servlet)

Надеюсь что вы поняли основные концепции работы Tomcatс сервлетами java. Успехов в освоении!=)

Установка Tomcat

Чтобы использовать Tomcat в Java, его необходимо установить в систему. О том, как установить Tomcat можно прочитать в этой статье, где также рассматриваются и другие сервера приложений. Итак, имея работающий Tomcat, встроенный в IDEA, можно попробовать приготовить свой первый сервлет.

Как создать веб-приложение

Как встроить приложение в работающий сервер

Несмотря на то, что встроенный Tomcat в IDEA — удобная фича, веб-приложение может быть перенесено на другой сервер и в другой контейнер. Рассмотрим вариант, когда необходимо встроить свое приложение в уже работающий сервер. Во-первых, необходимо дополнительно разобрать цель и функции контейнера сервлетов. Программа, которая приведена в примере выше — это веб-приложение. Класс TimeWorker — сервлет. Компоненты выполняют исключительно обработку запросов. Данные компоненты должны быть встроены в специальный контейнер сервлетов. Цель контейнера сервлетов — поддержка сервлетов и обеспечение их жизненного цикла. Простейший пример работы Tomcat — сканирование определенной папки с целью определить, появился ли в ней новый сервлет. Если да — инициализировать его и подготовить к приему запросов от клиентов. Если сервлет был обновлен, провести повторную инициализацию для обновления компонентов. При удалении сервлета — остановить обработку запросов, удалить сервлет из Tomcat.

Функции контейнера сервлетов

  1. Обмен данными между сервлетом и клиентами;
  2. Организация клиентских сессий;
  3. Создание программной среды для функционирования сервлета;
  4. Идентификация и авторизация клиентов;
  5. В большинстве случаев — управление метаданными (заголовки, методы и прочее).

Установка сервлета

Tomcat в Java - 7

Tomcat принимает для обработки веб-приложения на Java, которые имеют расширение .war. Это как jar, только web. Файлы такого типа объединяют в себе JSP-файлы, сервлеты, class-файлы, статические ресурсы и прочее. При установке такого файла в Tomcat происходит его распаковка, а затем запуск, поэтому существует строгое требование к структуре файлов в проекте. Если проект был создан в IDEA, вся структура создана автоматически. Файл war можно создать стандартными средствами IDEA. Для этого необходимо зайти в ProjectStructure -> Artifacts -> Нажать “+” -> WebApplication: Archive. В открывшемся поле задать имя для итогового war-файла, например deployed_war. Ниже необходимо нажать на кнопку Create Manifest… Далее необходимо указать путь к папке web проекта. В ней будет создана папка META-INF, в которую будет помещен файл MANIFEST.MF. Далее следует нажать Apply и Ok. Чтобы собрать проект в war-файл, следует во вкладке Build выбрать опцию Build Artifact: В появившемся поле нужно нажать на deployed_war. Затем начнется сборка проекта и Intellij IDEA создаст папку out, в которой появится папка artifacts с именем нашего артефакта. В этой папке будет лежать файл deployed_war.war: Теперь можно деплоить этот файл в Tomcat. Деплой приложения проще всего выполнить из веб-интерфейса Tomcat. Просто нажмите кнопку выбора файла на вкладке Deploy, перейдите к местоположению файла WAR и выберите его, затем нажмите кнопку развертывания. В обоих случаях, если все пойдет хорошо, консоль Tomcat сообщит нам, что развертывание прошло успешно примерно таким выводом в консоль: INFO: Deployment of web application archive \path\to\deployed_war has finished in 4,833 ms

Польза Tomcat для разработки

Самое главное, Tomcat может выполнять роль полноценного web-сервера. Благодаря этому развертывание приложений происходит гораздо быстрее, чем было раньше.Также Tomcat может выступать в роли классического контейнера сервлетов, который можно встроить в более крупный веб-сервер.

Tomcat способствует обмену данными между клиентом и сервлетом, обеспечивает программный контекст для веб-приложений, берет на себя функции идентификации и авторизации клиентов, создание сессий для каждого из них.

Предоставляет очень удобное управление JSP-страницами. Фактически веб-сервер может отдавать только html. Jasper, компонент Tomcat, компилирует код, содержащийся в шаблонных тегах JSP-страниц в корректный HTML-файл, который получает клиент. Вся логика шаблонизации находится внутри Tomcat, позволяя добавлять даже сложные конструкторы в классическую форму HTML.

Tomcat на Ubuntu не устанавливается из репозитория (в отличие от некоторых других дистрибутивов Linux, например, CentOS). Поэтому в данной инструкции мы выполним ручную установку — развертывание дополнительных компонентов (Java), загрузку и распаковку пакета веб-сервера Tomcat, а также настройку его автоматического запуска в случае сбоя или после перезагрузки системы. На момент обновления инструкции использовался Tomcat версии 10 и Ubuntu 20.04.

Подготовка системы

Обновляем список пакетов в репозиториях:

Задаем имя серверу:

Настраиваем часовой пояс, например:

timedatectl set-timezone Europe/Moscow

* где Europe/Moscow — московское время. Список всех возможных зон смотрим командой timedatectl list-timezones.

Устанавливаем сервис для автоматической синхронизации времени, а также разрешаем его автозапуск:

apt-get install chrony

systemctl enable chrony

Если мы используем брандмауэр, необходимо открыть порт 8080:

iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

* 8080 — порт по умолчанию, на котором работает Tomcat. Если мы заходим поменять данный порт, то нужно будет открыть именно его.

Сохраняем правила — для этого устанавливаем утилиту iptables-persistent:

apt-get install iptables-persistent

Если в процессе установки мы отказались сохранять правила, выполняем команду:

Можно приступать к установке Java.

Подготовка к установке

Для работы веб-сервера нам необходимы Java и пользователь, под которым будет работать Tomcat.

Установка JAVA

Мы установим пакет openjdk. Для этого вводим команду:

apt-get install default-jdk

* будет установлена последняя версия, максимально совместимая с используемой версией операционной системы Ubuntu.

Если в системе окажется несколько версий java, выберем последнюю. Для этого вводим команду:

update-alternatives --config java

. и выбираем в списке соответствующий вариант.

Проверяем используемую версию java:

Мы должны увидеть что-то на подобие:

openjdk version "14.0.2" 2020-07-14
OpenJDK Runtime Environment (build 14.0.2+12-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 14.0.2+12-Ubuntu-120.04, mixed mode, sharing)

Создание пользователя

Создаем пользователя командой:

useradd tomcat -U -s /bin/false -d /opt/tomcat -m

* в итоге будет создан пользователь tomcat со следующими опциями:

  • -U — также будет создана группа с таким же именем, что и пользователь.
  • -s /bin/false — запрещает пользователю интерактивный вход в систему.
  • -d /opt/tomcat — указывает путь до домашней директории пользователя.
  • -m — сразу создает домашнюю директорию пользователю.

Можно приступать к установке веб-сервера Apache Tomcat.

Установка Tomcat

Переходим на страницу официального сайта веб-сервера. В меню слева выбираем необходимую версию Tomcat:

Переходим на страницу загрузки последней версии Tomcat

* на момент обновления статьи, последняя версия была 10.

Копируем ссылку на архив tar.gz:

Копируем ссылку на архив tar.gz с веб-сервером

Используя скопированную ссылку, скачиваем архив на наш сервер:

Распаковываем содержимое архива в каталог /opt/tomcat:

tar zxvf apache-tomcat-*.tar.gz -C /opt/tomcat --strip-components 1

Готово. Можно запустить сервер командой:

Стартовая страница Tomcat Server

Наш сервер работает.

Посмотреть версию установленного программного обеспечения можно командой:

java -cp /opt/tomcat/lib/catalina.jar org.apache.catalina.util.ServerInfo

Мы должны увидеть что-то на подобие:

Настройка автозапуска

Для начала, остановим работу Tomcat:

Поменяем владельца для всех файлов в каталоге /opt/tomcat:

chown -R tomcat:tomcat /opt/tomcat

Создадим конфигурационный файл для нового юнита:

[Unit]
Description=Apache Tomcat Server
After=network.target

[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/default-java"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
RestartSec=10

* где обращаем внимание на:

  • User/Group — пользователь и группа пользователя, от чьего имени будет работать сервис.
  • Environment — переменные окружения. В нашем примере задается несколько для нормальной работы Java и Tomcat.
  • ExecStart/ExecStop — пути к скриптам, которые запускают или останавливают работу службы веб-сервера.
  • Restart/RestartSec — задают поведение сервиса при необходимости выполнить перезапуск. В нашем примере выполнять при сбое с интервалом в 10 секунд.

Из данных опций, возможно вам захочется поменять CATALINA_OPTS, например, задать другие значения для выделения памяти или указать определенный порт. Остальные опции можно оставить.

Перечитываем новый конфигурационный файл в systemd:

Стартуем наш сервис:

systemctl start tomcat

Проверяем, что он запустился и работает:

systemctl status tomcat

Мы должны увидеть что-то на подобие:

• tomcat.service - Apache Tomcat Server
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2021-02-09 10:30:25 UTC; 22h ago
Main PID: 14645 (java)

При необходимости перезапуска сервиса, можно будет использовать команду:

systemctl restart tomcat

Теперь открываем нашу страницу по IP-адресу сервера — мы снова должны увидеть стартовую страницу Tomcat.

Доступ к Managing Tomcat

Мы можем использовать веб-интерфейс для управления Tomcat. Для этого используются кнопки на стартовой странице:

  • Server Status
  • Manager App
  • Host Manager

По умолчанию, доступ закрыт в данные разделы. Пошагово, настроим доступ в каждый из них.

Создание служебного пользователя

Создаем пользователя, под которым мы будем авторизовываться в системе.

Внутрь раздела tomcat-users добавим:

* в данном примере мы создадим пользователя admin с паролем password и ролями admin-gui, manager-gui.

systemctl restart tomcat

Server Status и Manager App

Разделы позволяют получить доступ к статистике и управлению веб-приложениями. Они настраиваются вместе.

. и добавляем IP-адрес компьютера, с которого будем подключаться, например:

* в данном примере мы добавили адрес 192.168.1.15, которому разрешаем подключаться к статистике сервера и управлению веб-приложениями.

Пробуем зайти на стартовую страницу и перейти в раздел Server Status:

Server Status на стартовой странице Tomcat Server

Браузер запросит логин и пароль — вводим созданные ранее данные (admin и password). Мы должны увидеть статистику.

Теперь переходим в раздел Manager App:

Manager App на стартовой странице Tomcat Server

Мы должны увидеть раздел «Управление веб-приложениями Tomcat».

Host-Manager

В данном разделе можно управлять виртуальными серверами.

. и добавляем IP-адрес компьютера, с которого будем подключаться, например:

* в данном примере мы добавили адрес 192.168.1.15, которому разрешаем подключаться к управлению виртуальными серверами.

Пробуем зайти на стартовую страницу и перейти в раздел Host Manager:

Host Manager на стартовой странице Tomcat Server

Мы должны увидеть раздел «Управление виртуальными серверами Tomcat».

Поменять порт

По умолчанию, Tomcat запускается на порту 8080. Чтобы сменить номер, открываем файл:


Следуйте за нами на нашей фан-странице, чтобы получать уведомления каждый раз, когда появляются новые статьи. Facebook

1- Что такое Tomcat?

Tomcat является сервером приложения (Application Server), это программное обеспечение с открытым исходным кодом предоставленный Apache. Tomcat известен своей легкостью, часто используется в процессе разработки веб приложения на платформе Java Servlet.


Вы так же можете использовать Tomcat для реальной развертки приложений Java Web и вполне можете довериться его стабильности.

В данной статье я покажу вам как установить и конфигурировать Tomcat, с операционными системами Windows, Linux.

2- Download Tomcat

Самая новая версия Tomcat это 9.x, мы скачаем эту версию.


По моей рекомендации, вам стоит скачать zip файл, он подъодит разным операционным системам (Windows, Linux, . )


3- Установка Tomcat

Установка Tomcat очень простая, после того как вы скачали zip файл в предыдущем шаге, извлеките его в определнную папку.


4- Конфигурация Java_Home и User для Tomcat

Чтобы запустить Tomcat , на вашем компьютере должен быть установлен Java >= 8. И конфигурировать чтобы определить позицию Java для Tomcat.

Открыть файл startup.bat находящийся в папке bin в Tomcat. (Для операционной системы Linux/Ubuntu будет файл startup.sh).



Далее вы конфигурируете user , которым разрешается использовать Tomcat. Открыть файл tomcat-users.xml (Находится в папке conf).


Tomcat определил заранее 4 следующие роли (role):

  • manager-gui - allows access to the HTML GUI and the status pages
  • manager-script - allows access to the text interface and the status pages
  • manager-jmx - allows access to the JMX proxy and the status pages
  • manager-status - allows access to the status pages only

Один user может иметь одну или более ролей. Теперь я объявлю одного user с названием "tomcat" и с 4-мя ролями выше.


5- Запустить Tomcat

Чтобы запустить Tomcat, нажмите два раза на startup.bat (Или startup.sh если вы используете операционную систему Linux/Ubuntu).




Tomcat требует вас войти в систему. Войдите в систему с user/password которые вы объявили в предыдщем шаге.


По умолчанию есть некоторые приложения заранее развернутые на Tomcat. В котором, приложение /manager (Tomcat Manager Application) является самым важным, оно помогает вам управлять Tomcat, и вы можете получить доступ к нему по следующей ссылке:

Другие приложения вы можете Undeploy (Удалить развертывание) если вы не находите обходимости для испоьльзования.


Приложение / (Welcome to Tomcat) использует Context-Path по умолчанию. Вы можете Undeploy (Удалить развертывание) его, чтобы использовать Context-Path по умолчанию для другого приложения..

6- Развернуть приложение на Tomcat

Для начала, вам нужно скачать демо приложение, и развернуть его на Tomcat.


Приложение demo развернуто на Tomcat.



7- Изменить порт 8080 на 80

По умолчанию Tomcat использует порт (port) 8080, вы можете конфигурировать чтобы поменять на использование другого порта, например 80.

Открыть файл server.xml (Находящийсяв папке conf)




Иногда вы развертываете приложение на Tomcat, но UTF-8 не работает. Вы можете конфигурировать UTF-8 как charset по умолчанию для Tomcat.

Читайте также: