Я вижу спам в файле mod_jk.log со следующим сообщением об ошибке: jk_connect.c (593): подключение к 127.0.0.1:8009 не удалось (errno=61)
Tomcat работает нормально, между Apache и Tomcat не настроены брандмауэры (они оба работают на одной машине), и на порту 8009 есть прослушиватель. Коннектор работает нормально в течение нескольких дней подряд, прежде чем начинает засорять файлы журналов вышеуказанным сообщением для всех новых подключений.
Единственный обнаруженный мной способ избавиться от спама после его начала — это сначала перезапустить Tomcat, а затем перезапустить Apache.
Каковы наиболее вероятные причины возникновения такого рода проблем?
решение1
Это может иметь несколько причин:
- tomcat не работает
- tomcat запущен, но коннектор для порта 8009 не настроен
- tomcat запущен, но брандмауэр между apache и tomcat не пропускает трафик через порт 8009 (в вашей ситуации это не так)
- tomcat запущен, но не прослушивает этот ip
решение2
У меня была точно такая же проблема на новой установке буквально на этой неделе. Я скопировал все, файл за файлом, из установки Tomcat 5.5, которая работала точно так, как и ожидалось, так что это была действительно загадочная ситуация.
Итак, я запустил TCPView и увидел, что AJP НЕ привязывается к порту 8009 для TCP (но он был привязан к TCPv6! с...)
Похоже, что более поздние версии Tomcat, или isapi_redirect.dll, или Tomcat5w.exe (служба Tomcat) «поддерживают TCPv6», и вот тут-то и начинаются проблемы.
Хорошей новостью является то, что вы можете установить свойство «address» в файле server.xml на адрес IPv4, например:
<Connector address="192.168.1.109" port="8080"
... для вашего веб-сервиса и
<Connector address="192.168.1.109" port="8009"
... для разъема ajp/1.3
Обратите внимание: какой бы адрес вы ни указали, убедитесь, что ваш файл worker.properties имеет ту же настройку, например:
worker.ajp13w.host=192.168.1.109
...и, похоже, это все.