使用tomcat运行一个php应用程序?

是否有可能使用tomcat运行PHP应用程序?

在告诉我只使用httpd之前,我已经在host/myapp web服务器上运行了一个Java应用程序。 现在我想在主机/ roundcube上安装RoundCube。

一个是PHP,一个是Java。 我一直看到非正式引用说这是可能的,但没有真正的指示。 我不想把它们放在单独的端口上,我需要标准的HTTP和HTTPS端口。

有没有人有这方面的资源?

是的,这是可能的会议室 。 我们可以使用它自己的端口号localhost:8080在tomcat服务器上运行PHP代码

在这里我正在写一些对你有用的步骤。

如何在Windows中的Tomcat 6上安装或运行PHP

  1. 下载并解压PHP 5到一个目录, c:\php-5.2.6-Win32 – php-5.2.9-2-Win32.zip下载

  2. 下载PECL 5.2.5 Win32二进制文件 – PECL 5.2.5 Win32下载

  3. c:\php-5.2.6-Win32中将php.ini-dist重命名为php.ini

  4. php.ini取消注释或添加行(在开始处移除分号) ;extension=php_java.dll

  5. 从PECL 5.2.5复制php5servlet.dllc:\php-5.2.6-Win32

  6. PECL 5.2.5复制php_java.dllc:\php-5.2.6-Win32\ext

  7. PECL 5.2.5复制php_java.jartomcat\lib

  8. tomcat\webapps目录下创build一个名为"php" (或者你喜欢的)的目录

  9. PECL 5.2.5复制phpsrvlt.jartomcat\webapps\php\WEB-INF\lib

  10. unjar或unzip phpsrvlt.jar解压缩使用winrar或winzip unjar使用: jar xfv phpsrvlt.jar

  11. net\php\reflect.propertiesnet\php\servlet.properties改为library=php5servlet

  12. 重新创buildjar文件 – > jar cvf php5srvlt.jar net / php / PS:如果jar文件不运行,您必须为我添加系统variables的path我添加了C:\Program Files\Java\jdk1.6.0\bin; to System variables/Path C:\Program Files\Java\jdk1.6.0\bin; to System variables/Path

  13. 使用以下内容在tomcat\webapps\php\WEB-INF创buildweb.xml

     <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd "> <servlet> <servlet-name>php</servlet-name> <servlet-class>net.php.servlet</servlet-class> </servlet> <servlet> <servlet-name>php-formatter</servlet-name> <servlet-class>net.php.formatter</servlet-class> </servlet> <servlet-mapping> <servlet-name>php</servlet-name> <url-pattern>*.php</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>php-formatter</servlet-name> <url-pattern>*.phps</url-pattern> </servlet-mapping> </web-app> 
  14. 在Windows环境中添加PHPpath( c:\php-5.2.6-Win32 )到您的系统或用户path(提示:右键单击并从我的电脑中select属性

  15. tomcat\webapps\php下创buildtest.php进行testing

  16. 重新启动tomcat

  17. 浏览localhost:8080/php/test.php

在Apache后面运行Tomcat是很常见的。 在Apache中,您可以将某些URL指向Tomcat,并使Apache / PHP处理其他(包括静态图像)。

(在Unix上,Tomcat本身无法安全地在80端口上运行,而Apache可以,作为Java进程的Tomcat将需要以root身份运行,而Apache一切到端口80就切换到非root权限因此,在端口80上运行Apache,并将其部分或全部请求redirect到Tomcat,在Unix上是相当常见的。

Caucho Quercus可以在jvm上运行PHP代码。

晚了一点,但这里。

如果你只是想在tomcat上运行真正的php,那么http://wiki.apache.org/tomcat/UsingPhp如何?;

关于在80端口上运行tomcat总是有jsvc,只是谷歌jsvc + tomcat。

有这个PHP / Java桥梁。 这基本上是通过FastCGI运行PHP。 我自己没有用过

tomcat被devise为JSP servlet容器。 Apache被devise成PHP web服务器。 使用Apache作为Web服务器,响应PHP请求,并将JSP Servlet请求指向Tomcat容器。 应该更好地执行。

如果有人还在寻找–Quercus有一场战争,可以在Apache Tomcat或glassfish中运行PHP脚本。 对于一步一步的指导看这篇文章