Налаштування зв’язки Apache2 і Tomcat5 (apache java web tomcat linux debian)
Ключові слова:apache, java, web, tomcat, linux, debian, (знайти схожі документи)
Від: Alexandr L.Yatsuk Newsgroups: email Дата: Mon, 21 Dec 2004 14:31:37 +0000 (UTC) Subject: Налаштування зв'язки Apache2 і Tomcat5
Відбулася необхідність робити Java-hosting. Завдання було поставлено так:
Потрібно заховати кілька сайтів на java та кілька звичайних сайтів на html.
Виникла деяка складність. У пекаджах debian sarge є тільки tomcat4 і сама java там не найсвіжіша.
А веб-сайти написані під tomcat5. Тому робимо таке.
Tomcat У директорію, наприклад /usr/opt/ тягнемо tomcat5. (а якщо точніше, то я брав jakarta-tomcat-5.5.4, його мені порекомендували як стабільний) Знайти його можна тут: http://apache.alkar.net/jakarta/tomcat- 5/v5.5.4/bin/jakarta-tomcat-5.5.4.tar.gz
Яву моїм програмістам захотілося таку j2sdk1.4.2_06. Тому тягнемо її туди ж у /usr/opt/. Брати можна тут http://java.sun.com/j2se/1.4.2/download.html
Потрібно вибрати Download J2SE SDK, погодитися з ліцензією та завантажити. Отримуємо файл j2sdk-1_4_2_06-linux-i586.bin.txt. Робимо йому chmod 755 і натискаємо. Архівчик саморозпаковується і виходить директорія j2sdk1.4.2_06, яку за бажання можна перейменувати в просто java %)
І того ми отримали директорії з томкатом та явою.
Проводимо деякі налаштування томкату.
#vim /usr/opt/tomcat/bin/catalina.sh . (Файл запуску та зупинки томкату, на нього можна робити симлінк у /etc/rc2.d/, або який там Ви runlevel використовуєте).
У файлі дописуємо на початок найголовніше.
Такий самий рядок дописуємо в /etc/profile ,щоб кожен вхідний знав де у нього JAVA_HOME.
Правимо когфіг томкату. Прописуємо йому virtualhost
#vim /usr/opt/tomcat/conf/server.xml (І хто придумав конфіги на xml?)
У каталог /var/virt/www/example/webapps/ кладемо наш java проект.
У /usr/opt/tomcat/conf/server.xml повинен бути описаний конектор для mod-jk
Дивимось щоб стартанувся , перевіряємо порт telnet localhost 8009 , і якщо все нормально, забиваємо на томкат (в сенсі на цьому налаштування закінчимо):)
Apache Перехід до параметрів apache2.
Для початку ставимо все потрібне.
# apt-get install apache2 libapache2-mod-jk2
Створюємо VirtualHost для apache2.
ServerName example.com ServerAdmin [email protected] DocumentRoot /var/virt/www/example/webapps/ UseCanonicalName off CustomLog /var/log/apache2/example/access .log з'єднаний ErrorLog /var/log/apache2/example/error.log
Незабутнє створити директорію /var/log/apache2/example/, інакше апач не запуститься.
Включаємо цей virtualhost
#ln -s /etc/apache2/sites-available/example.com /etc/apache2/sites-enabled/01_example
Прив'язка Tomcat до Apache Приступаємо до найголовнішого, до зв'язування апача і томката.
#cd /etc/apache2/mods-enabled/ #ln -s /etc/apache2/mods-available/jk2.conf jk2.conf #ln -s /etc/apache2/mods-available/jk2 .load jk2.load
#cat /etc/apache2/mods-available/jk2.conf JkSet config.file /etc/apache2/workers2.properties
Залишилося останнє, відредагувати /etc/apache2/workers2.properties
[logger] # описуємо логер info=Native logger level=ERROR
[config:] # описуємо своє розташування file=/etc/apache2/workers2.properties debug=0 debugEnv=0
[uriMap:] info=Maps the requests. debug=0
[shm:] info=Scoreboard. Потрібно для reconfiguration and status with multiprocess servers file=anonymous debug=0
[workerEnv:] info=Global server options timing=0 debug=0
[lb:lb] info=Default load balancer. debug=0
[channel.socket:localhost:8009] # описується де і на якому порту нас слухає томкат info=Ajp13 forwarding over socket # я так думаю, що можна томкат та апач на різних машинах ставити. debug=0 # Не пробував. tomcat > [uri:/*.jsp] info=JSP Extension mapping. debug=0
Це каже, що все, що jsp треба запитувати у томката. Але тут з'явилися граблі, мої програмери не всі свої посилання роблять на .jsp. Так вони вже пишуть.
Тому дописуємо ще таке:
[uri:example.com/*] info= example JSP debug=0
І тепер все що example.com, тобто все що лежить в /var/virt/www/example/webapps/ нам віддає томкат.
Віртуальні хости, яким ява не треба не вписуємо просто таким способом;)
Запускаємо апач, перевіряємо в браузері http://example.com, йдемо пити пиво %)
Єдине що мені тут не сподобалося, що якщо в проекті є картинка або проста html, то її спочатку обробляє tomcat а потім віддає apache. Але ніхто не заважає покласти картинки окремо;)
Є ще кілька способів, щоб на сервері стояв і апач і томкат і все віддавалося в браузері по урлу без вказівки порту, тобто просто і зручно.