Может ли HTTP-сервер Apache обслуживать только статический контент? Tomcat используется для обслуживания сервлетов/JSP. Может ли Tomcat обслуживать другое динамическое содержимое, такое как perl, PHP и т. д.?
Может ли HTTP-сервер Apache обслуживать динамический контент?
Ответы (4)
HTTP-сервер Apache (http://httpd.apache.org) имеет:
Поддержка CGI: mod_cgi. Это будет запускать практически любой динамический контент, вы даже можете написать CGI в Bash.
Поддержка WSGI: mod_wsgi
Поддержка FastCGI: mod_fcgid (CGI, но более эффективный)
Поддержка Perl: mod_perl
Поддержка PHP: mod_php
Поддержка Python: mod_python (рекомендуется использование mod_wsgi)
Поддержка Ruby: mod_ruby (спасибо Дэвид Холм)
Мост для обслуживания содержимого Java через контейнер сервлетов, такой как Tomcat: mod_jk, mod_proxy_ajp
Кроме того, API для программирования ваших собственных модулей Apache, которые позволят вам делать то, что вы хотите, вот репозиторий некоторых из существующих модулей: http://modules.apache.org
Если вы имели в виду, если Tomcat может, он не может вне среды Java, это всего лишь контейнер сервлетов. Тем не менее, Java может выполнять некоторые другие языки сценариев, поэтому вы можете писать программы для создания контента во всех поддерживаемых движках сценариев< /а>.
Конечно, Apache может обслуживать динамический контент! mod_perl, mod_php и другие модули, которые вы подключаете к Apache, чтобы он мог их обслуживать.