Прежде всего, вы должны загрузить правильные двоичные файлы разъем mod_jk в зависимости от версии apache httpd
здесь:
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/
Если апач версия 2.2, выберите этот:
Если это 2,4, выбрать одну из них в зависимости, если вы предпочитаете 64 или 32 битной версии:
Скачать и распаковать правильный. Затем извлечь mod_jk.so из архива и поместите его в папку апача HTTPD модули, как правило, [APACHE_HOME]/modules
После этого, вы должны создать workers.properties
файл, как правило, в апача каталоге конф или любой другой внутри него (conf.d , дополнительный и т. д.).
Обычно workers.properties
файл следующего содержания:
worker.list=worker1,jkstatus
#Set properties for worker19 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.ping_timeout=1000
worker.worker1.connect_timeout=10000
worker.worker1.prepost_timeout=10000
worker.worker1.socket_timeout=10
worker.worker1.connection_pool_timeout=60
worker.worker1.connection_pool_size=90
worker.worker1.retries=2
worker.worker1.reply_timeout=300000
# status worker
worker.jkstatus.type=status
Вы должны проверить, что worker.worker1.host
и worker.worker1.port
имеют правильные значения для достижения соединителя ОЮЛ вашего Tomcat. 8009 обычно используется, но лучше проверьте, что в вашем сервере server.xml вашего tomcat и установите правильный в work.properties.
Затем в httpd.conf или любой другой файл внешней конф, добавьте следующее:
# Load mod_jk module
LoadModule jk_module modules/tomcat-connector/mod_jk.so
# Add the module (activate this lne for Apache 1.3)
# AddModule mod_jk.c
# Where to find workers.properties
JkWorkersFile conf/extra/workers.properties # Check the path is correct to your workers.properties
# Where to put jk shared memory
JkShmFile logs/mod_jk.shm
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
После того, как сделали это, вы можете попробовать перезапустить Apache HTTPD, чтобы убедиться, что все уже сделано правильно. Если apache запускается правильно, теперь вы можете приступить к планированию того, как вы перенаправляете соответствующие запросы с httpd на tomcat. Самый простой способ - перенаправить каждый запрос, который соответствует пути контекста вашего Tomcat webapp.
Если ваше приложение прослушивает http://localhost:8080/app-context/, то вы можете просто добавить в httpd.conf или файле, где вы установите load_module предложения, только после того, как JKLogLevel:
JkMount /app-context/* worker1
Отметим здесь, что worker1
должно совпадать с именем, дал работнику рабочий файл .properties.
Теперь необходимо перезапустить, Apache HTTPD, убедитесь, что Tomcat работает, а затем попробуйте в браузере следующий URL:
http://localhost/app-context/
И если вы достигнете Tomcat веб-приложение, все сделано.
Hello jlumietu. Я очень хорошо разбираюсь в этой конфигурации. но когда я добавляю модуль #load mod_jk .............................. в httpd.conf, мой XAMPP не может запустить apache. это сообщение об ошибке «Ошибка: выключение Apache неожиданно ...» –
Какая версия является httpd вашего XAMPP? Вы выбрали правильное распределение фильтра в соответствии с вашей версией Apache? И вы поместили файл .so в нужное место? – jlumietu
Я использую ** Панель управления XAMPP v3.2.2 (Apache 2.4) ** и для коннектора i использую ** (tomcat-connectors-1.2.40-windows-i386-httpd-2.4.x.zip) **. но он все еще не работает. Я не могу запустить сервер Apache. –