对于具有如此多 Java 经验的人来说,我感觉自己真的一无所知 - 提前感谢您帮助我熟悉当前(2010 年 2 月)的 JSP 环境。
以下是我希望了解的内容:
- 我是否正确理解了大多数人使用 Apache 来“前端”他们的 Tomcat 服务器,以便 Apache 直接与 Web 客户端“对话”并“代理”Tomcat 服务器?
- 我是否正确理解了 Apache 不能直接提供 JSP 服务但需要服务器(如 Tomcat)?
- 是否有适用于 Fedora Core 的 RPM 软件包,这样我就不必自己构建一个了?或者,Fedora Core 的软件包安装程序是否可以从源代码很好地完成这个任务?(有些可以,有些则不行!)
我在这里问问题;Tomcat 是否附带一个可以开始破解的可行示例,以便快速入门?如果没有,有什么好的建议吗?
谢谢大家,RT
答案1
是的,Tomcat 通常链接到诸如 httpd 之类的 Web 服务器,通过 ajp 协议进行通信。httpd 无法充当 servlet 容器并编译 JSP,但 Tomcat 通过 HTTP 提供静态内容(例如图像)的性能较差。通过将两者链接在一起,您可以同时获得两全其美的效果。对于开发来说,大多数人并不太关心 Tomcat 的静态内容性能,因此他们直接使用端口 8080。
对于在 Fedora 上进行开发(如果您想测试前端 Tomcat):
- 安装
httpd
包 - 安装
tomcat6
包 - 编辑
/etc/httpd/conf.d/proxy_ajp.conf
并取消注释/创建适当的 ProxyPass 行 - 将您的 .war 放入 /var/lib/tomcat6/webapps/
对于 Fedora 上的生产环境:
- 安装
httpd
和tomcat6
软件包 - 安装
mod_jk
(你可能需要从Tomcat 网站) mod_jk
根据其文档进行配置
(Fedora 的升级周期对于生产服务器来说是否太快,可能因人而异)
答案2
在我的经验中:
我是否正确理解了大多数人使用 Apache 来“前端”他们的 Tomcat 服务器,以便 Apache 直接与 Web 客户端“对话”并“代理”Tomcat 服务器?
在除“开发”之外的所有环境中,Apache HTTP Server(或可能是其他 HTTP 负载平衡器)都用于 1 个或多个 Tomcat 服务器的前端。对于简单的测试或开发,直接使用 Tomcat http 侦听器应该没问题。
我是否正确理解了 Apache 不能直接提供 JSP 服务但需要服务器(如 Tomcat)?
是的。
是否有适用于 Fedora Core 的 RPM 软件包,这样我就不必自己构建一个了?或者,Fedora Core 的软件包安装程序是否可以从源代码很好地完成这个任务?(有些可以,有些则不行!)
我不是 Fedora 用户,但似乎有适用于 tomcat5 和 tomcat6 的 rpm 包。
https://admin.fedoraproject.org/pkgdb/packages/index/?searchwords=tomcat*