Назад | Перейти на главную страницу

Перенаправление с веб-серверов на базе PHP в приложения ELB и tomcat

у меня есть AWS развертывание, при котором у меня есть веб-сервер (обслуживающий веб-сайт на основе PHP) и сервер приложений (обслуживающий JSP/Tomcat на базе приложений). Перенаправление с веб-сервера на сервер приложений осуществляется через AJP через порт 8009. Это указано в workers.properties.

Это хорошо работает, когда есть только один сервер приложений, частный IP-адрес которого указан в host директива workers.properties.

Это перенаправление не выполняется в тот момент, когда сервер приложений помещается за ELB. Перенаправление с PHP на Tomcat не выполняется. Что я пробовал до сих пор:

  1. Указал ELB конечная точка в workers.properties файл.
  2. Поменял все JkMount директивы в virtualhost.conf файл в ProxyPass директивы. Следующее изменение:
    JkMount /application* tomcat1
    к
    ProxyPass /application ajp://ELBDNSName:8009/application

Это тоже не работает.

Как мне заставить перенаправление работать правильно?

Вы много путаете:

  • Это не перенаправление, это ситуация обратного прокси.
  • AJP - это протокол.

Вы, вероятно, создали ELB в режиме HTTP, что означает, что он пытается общаться по HTTP как с клиентами, так и с вышестоящими. Ужасно не получается, потому что вы сказали им обоим поговорить с AJP. Оставив дело с ProxyPass и переключив ELB на TCP ДОЛЖЕН заставить вещи работать.

Я настоятельно рекомендую вам продолжить обучение или нанять эксперта.