Apache Tomcat построен на платформе веб-сервера Apache?

Недавно наш провайдер программной аналитики ( NETTRACKER ) прислал нам плагин, чтобы мы могли лучше привлекать посетителей. Этот плагин предназначен для Apache 1.x и Apache 2.x. Они сказали, и я цитирую

что, поскольку Apache Tomcat построен на HTTP-сервере Apache, конфигурация плагина должна быть такой же.

Я искал httpd.conf в нашем развертывании tomcat, но мы не смогли его найти, единственная конфигурация, похожая на эту, - это server.xml в каталоге / conf.

Если у кого-то есть лучшая информация об этих двух невероятных продуктах (HTTP-сервер Apache и Apache Tomcat), я буду очень признателен за различие.

РЕДАКТИРОВАТЬ: Если вам интересно, мы знаем, что веб-сервер Apache и Tomcat могут работать вместе, используя параметр mod_jk и другие прокси. Но это будет слишком сложно для нашего развертывания.

Ответов (4)

Решение

Apache Tomcat и Apache HTTP - это совершенно разные серверные технологии. Невозможно использовать плагин для HTTP-сервера Apache с Tomcat.

HTTP-сервер Apache разработан на C, как и плагины. Напротив, Tomcat теперь полностью разработан на Java. Tomcat не только обслуживает статический контент, но также может обслуживать страницы и сервлеты JSP.

Tomcat используется для размещения веб-приложений Java. Он действительно может обслуживать статический контент - вы можете разместить веб-приложение, используя только Tomcat. Поддерживаются безопасные соединения, и производительность также очень хорошая (сравнима с производительностью HTTP-сервера).

Простая установка Apache обслуживает статический контент. Используя соответствующие плагины, HTTP-запросы могут быть перенаправлены на сервер приложений (Tomcat, JBoss, Glassfish) или интерпретатор языка сценариев (PHP). Таким образом можно создавать динамический контент. Большими преимуществами Apache являются многочисленные доступные плагины, которые позволяют администраторам настраивать и контролировать веб-сайты любым удобным для них способом, и это самый распространенный доступный сервер. Это делает его наиболее безопасным решением, поскольку оно тщательно проверяется, и любая обнаруженная ошибка исправляется очень быстро.

Лучшим решением было бы использовать Tomcat, проксируемый сервером Apache. Настроить не так уж и сложно. Если вы не можете этого сделать, вы не сможете воспользоваться плагинами Apache.

полностью подделка. Плагины Apache httpd написаны на C, Tomcat - это чистая Java.

Вы все время видите эту путаницу. Многие думают, что Apache - это веб-сервер, хотя на самом деле это название организации, у которой есть проект веб-сервера под названием « Проект HTTP-сервера Apache ». Короче говоря, веб-сервер называется HTTPD (D как в демонах или процессах Unix).

Tomcat - еще один проект Apache. Этот проект реализует механизм сервлетов Java для обслуживания страниц и сервлетов JSP. Tomcat и HTTPD не имеют ничего общего друг с другом. Однако вы можете настроить HTTPD и Tomcat так, чтобы они работали вместе. Таким образом, вы можете заставить HTTPD обслуживать весь статический контент, выполнять перезапись URL и многое другое, что встроенный веб-сервер Tomcat не может (или не может делать очень хорошо). Каждый раз, когда запрашивается страница JSP, HTTPD передает запрос Tomcat. Tomcat обработает запрос и вернет результат обратно в HTTPD, который, в свою очередь, отправит его клиенту.

У Apache много интересных проектов . Например, есть также проект под названием Geronimo, который представляет собой сервер Java Enterprise (J2EE). Вы можете, например, выбрать встраивание Tomcat в Geronimo для обработки запросов JSP и сервлетов, где Geronimo выполняет более предприимчивые вещи (LDAP, обмен сообщениями и т. Д.). И вы, наверное, уже догадались, что вы также можете использовать HTTPD в качестве сервера статического содержимого для Geronimo.

Tomcat - это механизм сервлетов Java. Он может быть размещен в Apache или IIS или на множестве других внешних веб-серверов. Похоже, вы сейчас используете автономный экземпляр Tomcat ...

Если вы обслуживаете JSP / сервлеты через порт 8080 и заставляете его работать автономно на том же хост-компьютере, на котором работает Apache, это может позволить вам иметь их слабую связь. Не рекомендуется использовать несколько веб-серверов, отправляющих независимые запросы, особенно если вы хотите использовать серверную аутентификацию вместе с Apache. Обычно у вас есть один внешний сервер, который управляет всем через него ... Apache делает это довольно хорошо, и плагин, о котором вы говорите, вероятно, полагается на этот тип настройки (все подключается через Apache) для своих функций / возможностей, в зависимости от вашего краткое его описание.

Если вы хотите обслуживать свои сервлеты Tomcat в Apache, вы можете настроить apache для пересылки класса URI экземплярам сервера Tomcat. вы можете добиться этого типа пересылки через mod_rewrite. это более медленный вариант с точки зрения производительности, так как он добавляет небольшие накладные расходы на все, что вы используете. Вы также можете проксировать входящие запросы через механизм CGI аналогичным образом, от Apache до Tomcat.

mod_jk упростит развертывание и повысит производительность при размещении Tomcat в конфигурации сервера Apache. Довольно безболезненно настроить, если вы следуете документации, поэтому я не уверен, что вы имеете в виду под «слишком сложным» для вашего развертывания - если вы хотите Apache и уже имеете Tomcat, это может показаться лишь незначительными изменениями конфигурации в получить mod_jk загрузку и установку.