我们在 Tomcat 上部署了一个 Java Web 应用程序。我们还设置了 Apache 和 mod_proxy_ajp 以将 Web 请求(端口 80/443)路由到 Tomcat。
我们想在同一个 Apache 服务器上部署一个 PHP 应用程序 - 可能在子目录下(/var/www/ourapp)。
现在,我们希望在 Java 应用程序生成的网页内访问和显示来自 PHP 应用程序的网页。还计划实施单点登录。示例:来自 Java 的网页有 (JQuery Tabs),我们希望在选项卡内显示 PHP 网页,而所有其他 HTML 都来自 Java 应用程序。
您能否大致介绍一下如何进行此操作?主要是 1. 我们应该如何在用于将 Web 请求路由到 Tomcat 的同一台 Apache 服务器上安装/设置我们的 PHP 应用程序?即设置子域或安装在子目录中 2. 如何将 PHP 页面带入当前网页(由 Java 生成)。我们可以使用 AJAX 请求吗?还是应该使用 Java PHP Bridge/Querces 等应用程序?
提前感谢您的时间。问候。
答案1
AJP 代理应该只接受 AJP conf 文件中定义的请求并将这些请求转发给 Tomcat,这就是代理所做的。
换句话说,当收到对 index.jsp 的请求时,文件 *.jsp 配置为通过 AJP 发送。此时 Apache 打开连接并向 Tomcat 发送 AJP 请求,Tomcat 随后呈现并返回 index.jsp 文件,Apache 随后将其流式传输到客户端。
如果 PHP 在 Apache 服务器上运行,并且您没有强制所有请求都转到 Tomcat,则对 index.php 的任何请求都应由您的 Apache 服务器返回。因此,就您的 Java 应用程序而言,对 index.php 的请求与加载无关,当然这取决于您的实现。如果您只是使用 jQuery 加载方法,客户端将调用 PHP 应用程序,然后由 Apache 呈现。无论如何,除了检查您的 AJP conf 文件之外,您不需要做太多事情。