Apache HTTP Server 可以只提供静态内容吗?Tomcat 用于服务 Servlets/JSP。Tomcat 能否提供其他动态内容,如 perl、PHP 等?
4 回答
Apache HTTP 服务器 ( http://httpd.apache.org ) 具有:
CGI 支持:mod_cgi。这将运行几乎任何动态内容,您甚至可以在 Bash 中编写 CGI。
WSGI 支持:mod_wsgi
FastCGI 支持:mod_fcgid(CGI,但更高效)
Perl 支持:mod_perl
PHP 支持:mod_php
Python 支持:mod_python(推荐使用 mod_wsgi)
Ruby 支持:mod_ruby(感谢David Holm)
通过 Tomcat 等 servlet 容器提供 Java 内容的桥接:mod_jk、mod_proxy_ajp
另外,一个 API 来编写你自己的 apache 模块,它可以让你做你想做的事情,这里是一些现有模块的存储库:http: //modules.apache.org
如果您的意思是 Tomcat 可以,它不能在 Java 环境之外,它只是一个 servlet 容器。也就是说,Java 可以执行一些其他脚本语言,因此您可以编写程序以在所有受支持的脚本引擎中生成内容。
当然 Apache 能够提供动态内容!mod_perl、mod_php 等是您插入到 Apache 以使他能够为它们提供服务的模块。
一句话:是的:P
不要忘记mod_ruby。