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

Информация о портах Apache / Tomcat

У меня есть несколько вопросов относительно конфигурации портов HTTPD-сервера Apache и веб-сервера Tomcat.

Через netstat и TOMCAT/conf/server.xml Я это понимаю:

Тем не мение:

  1. Как порт 8009 взаимосвязан с портами Apache и Tomcat? Означает ли это, как запросы обмениваются между коннектором, Apache, Tomcat и т. Д.?

  2. Что запускает этот коннектор AJP (Tomcat или Apache)?

    Потому что даже когда Apache запущен; Я НЕ вижу сокета, прослушивающего 8009. Но это порт, упомянутый в apache2/conf/workers.properties.

    Я думаю, что после запуска Tomcat этот порт будет доступен.

  3. В server.xml какова цель redirectPort 8443?

<Connector port="8081" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Хорошо, попробую тебе ответить.

Рассмотрим двух друзей Apache HTTPD и Apache Tomcat (я назову их вкратце HTTPD и Кот). У каждого из них есть средства общения с другими людьми, скажем, по мобильному телефону, стационарному телефону или чату.

Tomcat имеет три телефона для приема звонков:

  • Один для приема международных звонков, в котором он говорит на языке, на котором говорит большинство людей в (информационном) мире, HTTP. Этот телефон имеет международное соглашение субномер (порт) - 80, но может быть любым числом. Бывает, что Tomcat, будучи немного эксцентричным, по умолчанию предпочитает 8080, поэтому по умолчанию вы можете говорить ему HTTP через порт 8080.

  • Другой телефон для приема звонков от международных VIP-людей, которые хотят быть уверенными, что разговаривают с Tomcat, и никто не может их прослушать, поэтому они говорят на предыдущем международном языке, но меняют слова (шифрование, HTTPS). По международным соглашениям это порт 443, но, как мы уже говорили, Tomcat эксцентричен, он выбрал для этого порта 8443.

  • Третий телефон Tomcat он использует для приема звонков только от людей, говорящих на его родном языке, AJP (он живет в стране серверов приложений Java). По международному праву это порт 8009.

У HTTPD всего два телефона для приема звонков

  • Первые два такие же, как и для Tomcat, но HTTPD не такой уж эксцентричный, предпочитая использовать обычные согласованные числа: 80 для HTTP и 443 для HTTPS.

История

Теперь у HTTPD есть магазин. Иногда клиенты просят вещи, которых нет в магазине, но когда он знает, что Tomcat есть, он звонит Tomcat и просит принести вещи. Для разговора с Tomcat HTTPD может использовать международные языки, HTTP и HTTPS, но часто Tomcat более счастлив говорить на своем родном языке, AJP. Итак, HTTPD знает, что есть два переводчика, которые могут помочь ему говорить на AJP с Tomcat, mod_jk (http://tomcat.apache.org/connectors-doc/) и mod_proxy_ajp (https://httpd.apache.org/docs/2.4/mod/mod_proxy_ajp.html).

Теперь более серьезнопо умолчанию HTTPD прослушивает порты 80 для HTTP и порт 443 для HTTPS.

Tomcat прослушивает порт 8080 для HTTP, порт 8443 для https и порт 8009 для AJP.

Вы можете настроить порты для HTTPS, используя директивы Listen в файле конфигурации, httpd.conf или файлах, включенных в него. Так что grep для Listen, чтобы проверить их.

Вы можете настроить Tomcat для портов в server.xml. На языке Tomcat это коннекторы (в отличие от Listen в HTTPD). Что касается вашей конфигурации, если вы настроили Tomcat для использования HTTPS он будет перенаправлять запросы в HTTP на настроенный порт.

Иметь ввиду, HTTPD заботится о своих портах, Кот собственных портов, и порт может прослушиваться только от одного приложения одновременно. Поэтому, если у вас есть и HTTPD, и Tomcat на одном компьютере, они отлично подходят, поскольку используемые порты по умолчанию разные:

HTTPD: порты 80 и 443

Tomcat: порты 8080, 8443 и 8009.

1) HTTPD-сервер Apache и веб-сервер Tomcat могут быть подключены с помощью Apache Tomcat Connector - mod_jk

Когда вы настроите mod_jk на HTTPD сервере Apache, используя следующую ссылку, вы увидите соединение: http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html Порт по умолчанию - 8009, но его можно изменить с обеих сторон: в server.xml на стороне Tomcat и в файле worker.properties на стороне сервера Apache HTTPD (ищите 8009): http://tomcat.apache.org/connectors-doc/reference/workers.html

Конфигурация веб-сервера Tomcat должна выполняться в дополнение к конфигурации рабочих. Если вы не настроите коннектор AJP на Tomcat, соединение AJP работать не будет: http://tomcat.apache.org/tomcat-7.0-doc/config/ajp.html

2) Коннектор Apache Tomcat - mod_jk запускается сервером Apache HTTPD.

3) RedirectPort не имеет отношения к AJP. Увидеть ниже: http://tomcat.apache.org/tomcat-7.0-doc/config/http.html

If this Connector is supporting non-SSL requests, and a request is received for which a matching  requires SSL transport, Catalina will automatically redirect the request to the port number specified here.