Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
wiki:руководство_по_ubuntu_server:web_сервера:apache_tomcat [2012/07/14 16:24] создано |
wiki:руководство_по_ubuntu_server:web_сервера:apache_tomcat [2012/07/14 21:17] (текущий) [Ссылки] |
||
---|---|---|---|
Строка 8: | Строка 8: | ||
=====Apache Tomcat===== | =====Apache Tomcat===== | ||
- | Apache Tomcat is a web container that allows you to serve Java Servlets and JSP (Java Server Pages) web applications. | + | Apache Tomcat - это контейнер, который позволяет вам использовать интернет приложения такие, как **Java сервлеты** и **JSP** (серверные страницы Java). |
- | The Tomcat 6.0 packages in Ubuntu support two different ways of running Tomcat. You can install them as a classic unique system-wide instance, that will be started at boot time will run as the tomcat6 unprivileged user. But you can also deploy private instances that will run with your own user rights, and that you should start and stop by yourself. This second way is particularly useful in a development server context where multiple users need to test on their own private Tomcat instances. | + | Пакеты Tomcat 6.0 в Ubuntu поддерживают два варианта запуска Tomcat. Вы можете установить его как классический одиночный экземпляр на всю систему, который будет запускаться при загрузке системы от имени непривилегированного пользователя //tomcat6//. Но вы можете развернуть частные экземпляры, которые будут запускаться с правами вашего собственного пользователя, и вам придется запускать и останавливать их самостоятельно. Второй вариант особенно полезен в контексте сервера разработки, где нескольким пользователям требуется тестировать их собственные частные экземпляры Tomcat. |
- | System-wide installation | + | ====Масштабная установка на всю систему==== |
- | Configuration | + | |
- | Using Tomcat standard webapps | + | |
- | Using private instances | + | |
- | References | + | |
- | ====Масштабная установка системы==== | + | Для установки сервера **Tomcat** вам достаточно ввести следующую команду в терминале: |
- | + | <code>sudo apt-get install tomcat6</code> | |
- | To install the Tomcat server, you can enter the following command in the terminal prompt: | + | Это установит сервер Tomcat только с ROOT приложением, которое выдает минимальную страницу "It works" по умолчанию. |
- | + | ||
- | sudo apt-get install tomcat6 | + | |
- | + | ||
- | This will install a Tomcat server with just a default ROOT webapp that displays a minimal "It works" page by default. | + | |
====Настройка==== | ====Настройка==== | ||
- | Tomcat configuration files can be found in /etc/tomcat6. Only a few common configuration tweaks will be described here, please see Tomcat 6.0 documentation for more. | + | Файл настроек Tomcat может быть найден в /etc/tomcat6. Здесь будут описаны только несколько общих элементов настройки; для более подробной информации обратитесь к [[http://tomcat.apache.org/tomcat-6.0-doc/index.html|документации по Tomcat 6.0]]. |
- | + | ||
- | ===Changing default ports=== | + | |
- | By default Tomcat 6.0 runs a HTTP connector on port 8080 and an AJP connector on port 8009. You might want to change those default ports to avoid conflict with another server on the system. This is done by changing the following lines in /etc/tomcat6/server.xml: | + | ===Изменение портов по умолчанию=== |
+ | Изначально Tomcat 6.0 запускает HTTP соединитель (connector) на порту 8080 и AJP соединитель на порту 8009. Вы можете захотеть изменить эти порты для избежания конфликтов с другими серверами на системе. Это делается изменением следующих строк в /etc/tomcat6/server.xml: | ||
+ | <code> | ||
<Connector port="8080" protocol="HTTP/1.1" | <Connector port="8080" protocol="HTTP/1.1" | ||
connectionTimeout="20000" | connectionTimeout="20000" | ||
Строка 39: | Строка 31: | ||
... | ... | ||
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> | <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> | ||
+ | </code> | ||
- | ===Changing JVM used=== | + | ===Изменение используемой JVM=== |
- | By default Tomcat will run preferably with OpenJDK-6, then try Sun's JVM, then try some other JVMs. If you have various JVMs installed, you can set which should be used by setting JAVA_HOME in /etc/default/tomcat6: | + | По умолчанию Tomcat предпочитает использовать OpenJDK-6, затем пробует JVM от Sun (Oracle), а затем иные JVM. Если у вас установлено несколько JVM, вы можете определить какая из них будет использоваться, установив JAVA_HOME в /etc/default/tomcat6: |
+ | <code>JAVA_HOME=/usr/lib/jvm/java-6-sun</code> | ||
- | JAVA_HOME=/usr/lib/jvm/java-6-sun | + | ===Определение пользователей и ролей=== |
- | + | ||
- | ===Declaring users and roles=== | + | |
- | + | ||
- | Usernames, passwords and roles (groups) can be defined centrally in a Servlet container. In Tomcat 6.0 this is done in the /etc/tomcat6/tomcat-users.xml file: | + | |
+ | Пользователи, пароли и роли (группы) могут быть определены централизованно в секции Servlet. Для Tomcat 6.0 это настраивается в файле /etc/tomcat6/tomcat-users.xml: | ||
+ | <code> | ||
<role rolename="admin"/> | <role rolename="admin"/> | ||
<user username="tomcat" password="s3cret" roles="admin"/> | <user username="tomcat" password="s3cret" roles="admin"/> | ||
+ | </code> | ||
====Использование стандартных приложений Tomcat==== | ====Использование стандартных приложений Tomcat==== | ||
- | Tomcat is shipped with webapps that you can install for documentation, administration or demo purposes. | + | Tomcat поставляется с приложениями, которые вы можете установить для документирования, администрирования или демонстрационных целей. |
- | ===Tomcat documentation=== | + | ===Документация Tomcat=== |
- | The tomcat6-docs package contains Tomcat 6.0 documentation, packaged as a webapp that you can access by default at http://yourserver:8080/docs. You can install it by entering the following command in the terminal prompt: | + | Пакет **tomcat6-docs** содержит документацию Tomcat 6.0, упакованную в качестве интернет приложения, которое доступно по умолчанию по адресу **%%http://yourserver:8080/docs%%**. Вы можете его установить следующей командой в терминале: |
+ | <code>sudo apt-get install tomcat6-docs</code> | ||
- | sudo apt-get install tomcat6-docs | + | ===Приложения администрирования Tomcat=== |
- | ===Tomcat administration webapps=== | + | Пакет **tomcat6-admin** содержит два приложения, которые могут быть использованы для администрирования сервера Tomcat через web интерфейс. Для их установки введите следующую команду в терминале: |
+ | <code>sudo apt-get install tomcat6-admin</code> | ||
+ | Первое из них это приложение **manager**, которое по умолчанию доступно по адресу **%%http://yourserver:8080/manager/html%%**. Оно в первую очередь используется для получения статуса сервера и перезапуска web приложений. | ||
+ | <note>Доступ к приложению **manager** по умолчанию защищено: вам надо определить пользователя с ролью %%"manager"%% в /etc/tomcat6/tomcat-users.xml для получения к нему доступа.</note> | ||
- | The tomcat6-admin package contains two webapps that can be used to administer the Tomcat server using a web interface. You can install them by entering the following command in the terminal prompt: | + | Второе приложение - это **host-manager**, которое по умолчанию доступно вам по адресу **%%http://yourserver:8080/host-manager/html%%**. Оно может быть использовано для создания виртуальных хостов динамически. |
- | + | <note>Доступ к приложению **host-manager** также закрыто по умолчанию: вам надо определить пользователя с ролью %%"admin"%% в /etc/tomcat6/tomcat-users.xml для получения к нему доступа.</note> | |
- | sudo apt-get install tomcat6-admin | + | |
- | + | ||
- | The first one is the manager webapp, which you can access by default at http://yourserver:8080/manager/html. It is primarily used to get server status and restart webapps. | + | |
- | + | ||
- | Access to the manager application is protected by default: you need to define a user with the role "manager" in /etc/tomcat6/tomcat-users.xml before you can access it. | + | |
- | + | ||
- | The second one is the host-manager webapp, which you can access by default at http://yourserver:8080/host-manager/html. It can be used to create virtual hosts dynamically. | + | |
- | + | ||
- | Access to the host-manager application is also protected by default: you need to define a user with the role "admin" in /etc/tomcat6/tomcat-users.xml before you can access it. | + | |
- | + | ||
- | For security reasons, the tomcat6 user cannot write to the /etc/tomcat6 directory by default. Some features in these admin webapps (application deployment, virtual host creation) need write access to that directory. If you want to use these features execute the following, to give users in the tomcat6 group the necessary rights: | + | |
+ | По соображениям безопасности пользователь tomcat6 по умолчанию не может писать в каталог /etc/tomcat6. Некоторые возможности в этих приложениях администрирования (разработка приложений, создание виртуальных хостов) требуют права записи на этот каталог. Если вы хотите пользоваться этими возможностями, выполните следующее для предоставления группе tomcat6 необходимых прав: | ||
+ | <code> | ||
sudo chgrp -R tomcat6 /etc/tomcat6 | sudo chgrp -R tomcat6 /etc/tomcat6 | ||
sudo chmod -R g+w /etc/tomcat6 | sudo chmod -R g+w /etc/tomcat6 | ||
+ | </code> | ||
- | ===Tomcat examples webapps=== | + | ===Приложения примеров Tomcat=== |
- | The tomcat6-examples package contains two webapps that can be used to test or demonstrate Servlets and JSP features, which you can access them by default at http://yourserver:8080/examples. You can install them by entering the following command in the terminal prompt: | + | Пакет **tomcat6-examples** содержит два приложения, которые могут быть использованы для тестирования или демонстрации возможностей сервлетов и JSP, которые по умолчанию вы можете найти по адресу **%%http://yourserver:8080/examples%%**. Вы можете установить их следующей командой в терминале: |
- | + | <code>sudo apt-get install tomcat6-examples</code> | |
- | sudo apt-get install tomcat6-examples | + | |
====Использование пользовательских экземпляров==== | ====Использование пользовательских экземпляров==== | ||
- | Tomcat is heavily used in development and testing scenarios where using a single system-wide instance doesn't meet the requirements of multiple users on a single system. The Tomcat 6.0 packages in Ubuntu come with tools to help deploy your own user-oriented instances, allowing every user on a system to run (without root rights) separate private instances while still using the system-installed libraries. | + | Tomcat в большей степени используется при разработке и тестировании, когда использование одиночной оболочки на сервере не удовлетворяет требованиям множества пользователей на одной системе. Пакеты Tomcat 6.0 в Ubuntu поставляются с инструментарием, помогающим создать ваши собственные настроенные на пользователя оболочки, позволяя каждому пользователю в системе запускать (без прав суперпользователя) отдельные частные экземпляры, при том, что они будут использовать библиотеки, установленные в системе. |
- | It is possible to run the system-wide instance and the private instances in parallel, as long as they do not use the same TCP ports. | + | <note>Существует возможность запускать общий и частные экземпляры в параллель, до тех пор пока они не используют одни и те же TCP порты.</note> |
- | ===Installing private instance support=== | + | ===Установка поддержки частных оболочек=== |
- | You can install everything necessary to run private instances by entering the following command in the terminal prompt: | + | Вы можете установить все необходимое для запуска частных оболочек вводом следующей команды в терминале: |
+ | <code>sudo apt-get install tomcat6-user</code> | ||
- | sudo apt-get install tomcat6-user | + | ===Создание частного экземпляра=== |
- | ===Creating a private instance=== | + | Вы можете создать каталог частной оболочки вводом следующей команды в терминале: |
+ | <code>tomcat6-instance-create my-instance</code> | ||
+ | Это создаст новый каталог **my-instance** со всеми необходимыми подкаталогами и сценариями. Вы можете, например, установить свои общие библиотеки в подкаталог lib/ и развернуть свои приложения в подкаталоге webapps/. По умолчанию никакие приложения не разворачиваются. | ||
- | You can create a private instance directory by entering the following command in the terminal prompt: | + | ===Настройка вашего частного экземпляра=== |
- | tomcat6-instance-create my-instance | + | Вы обнаружите обычные файлы настроек Tomcat для вашего частного экземпляра в подкаталоге conf/. Вы конечно же можете отредактировать файл conf/server.xml для изменения портов по умолчанию, используемых вашим частным экземпляром Tomcat для предотвращения конфликтов с другими экземплярами, которые также могут быть запущены. |
- | This will create a new my-instance directory with all the necessary subdirectories and scripts. You can for example install your common libraries in the lib/ subdirectory and deploy your webapps in the webapps/ subdirectory. No webapps are deployed by default. | + | ===Запуск/остановка вашего частного экземпляра=== |
- | ===Configuring your private instance=== | + | Вы можете стартовать свой частный экземпляр, набрав следующую команду в терминале (подразумевается, что ваш экземпляр расположен в каталоге my-instance): |
+ | <code>my-instance/bin/startup.sh</code> | ||
+ | <note>Вы можете проверить подкаталог logs/ на предмет обнаружения каких-либо ошибок. Если вы получили ошибку **%%java.net.BindException: Address already in use<null>:8080%%**, это означает, что порт, который вы используете уже занят и вам следует его поменять.</note> | ||
- | You will find the classic Tomcat configuration files for your private instance in the conf/ subdirectory. You should for example certainly edit the conf/server.xml file to change the default ports used by your private Tomcat instance to avoid conflict with other instances that might be running. | + | Вы можете остановить свой экземпляр, используя следующую команду в терминале (подразумевается, что ваш экземпляр все еще находится в каталоге my-instance): |
- | + | <code>my-instance/bin/shutdown.sh</code> | |
- | ===Starting/stopping your private instance=== | + | |
- | + | ||
- | You can start your private instance by entering the following command in the terminal prompt (supposing your instance is located in the my-instance directory): | + | |
- | + | ||
- | my-instance/bin/startup.sh | + | |
- | + | ||
- | You should check the logs/ subdirectory for any error. If you have a java.net.BindException: Address already in use<null>:8080 error, it means that the port you're using is already taken and that you should change it. | + | |
- | + | ||
- | You can stop your instance by entering the following command in the terminal prompt (supposing your instance is located in the my-instance directory): | + | |
- | + | ||
- | my-instance/bin/shutdown.sh | + | |
====Ссылки==== | ====Ссылки==== | ||
- | See the Apache Tomcat website for more information. | + | -- Смотрите [[http://tomcat.apache.org/|сайт Apache Tomcat]] для дополнительной информации. |
- | + | -- [[http://oreilly.com/catalog/9780596003180/|Tomcat: The Definitive Guide]] - хороший ресурс для построения web приложений на Tomcat. | |
- | Tomcat: The Definitive Guide is a good resource for building web applications with Tomcat. | + | -- Для дополнительной литературы смотрите список на странице [[http://wiki.apache.org/tomcat/Tomcat/Books|Tomcat Books]]. |
- | + | -- Также загляните на страницу [[https://help.ubuntu.com/community/ApacheTomcat5|Ubuntu Wiki Apache Tomcat]]. | |
- | For additional books see the Tomcat Books list page. | + | |
- | + | ||
- | Also, see theUbuntu Wiki Apache Tomcat page. | + | |
---- | ---- |