有没有办法在同一个 Apache 服务器或至少同一个端口上使用 Java 和 PHP?

有没有办法在同一个 Apache 服务器或至少同一个端口上使用 Java 和 PHP?

我对 Java for Web 还很陌生,我的问题是是否可以同时使用 Java 和 PHP?我知道可以同时使用它们,让我们换个说法,有没有办法在同一端口访问它们?

Java使用Tomcat,PHP也可以使用tomcat吗?

答案1

Tomcat 不支持 PHP,并且(除非最近发生了什么事情)没有同时支持 Java 和 PHP 的“混合”应用服务器。但是,您可以安装并配置 Apache 服务器以支持 PHP。这样,您便可以在某个端口上配置 PHP 应用服务器。然后,您可以配置此 Apache 以将某些 URL 模式重定向到 Tomcat 服务器(例如,所有带有前缀 /java/app/* 的 URL 都转到 Tomcat,其他所有 URL 都由 Apache 直接处理)。现在,如果您在 Apache 服务器中部署用 PHP 编写的 Web 应用程序,在 Tomcat 服务器中部署 Java Web 应用程序,它们都将“响应”同一端口。

答案2

作为 Andrei 建议的补充,安装一个标准的 Apache+PHP 组合,监听 [your-ip]:80 和/或 [your-ip]:443,然后安装 Tomcat,监听 localhost:8080。然后只需在常规 Apache 配置中执行以下操作:

<Location /myjavapps>
    order deny,allow
    allow from all
    ProxyPass http://localhost:8080/
    ProxyPassReverse http://localhost:8080/
</Location>

答案3

您可以在 apache 配置中使用 mod_jk 或 proxy_pass 与端口 80 上的 tomcat 应用程序进行交互

IE

ProxyPass /servlets ajp://localhost:8009/servlets ProxyPassReverse /servlets ajp://localhost:8009/servlets

这意味着 /servlets - apache 正在向 tomcat 发送请求

PHP 是一个编译模块,定义在您希望它在虚拟主机中的位置

相关内容