如何使用apache-tomcat-6.0.18运行单个PHP文件?

时间:2010-04-13 08:43:28

标签: php apache gwt

我想使用apache-tomcat-6.0.18

运行单个php文件

我的项目是GWT项目,服务器端是java servlet

我在apache-tomcat-6.0.18 / webapps / folder

中的服务器上部署了我的项目

所以请告诉我运行php文件的解决方案

5 个答案:

答案 0 :(得分:2)

我们可以使用 JavaBridge ..

来完成此操作

下载jar文件(即从JavaBridge.war中提取jar)

JavaBridge.jar
php-script.jar
php-servlet.jar

并将其放入项目的lib文件夹中。然后在web.xml中键入以下条目

web.xml

<!-- the following 8 lines extend the servlet spec 2.2 "url-pattern" to handle PHP PATH_INFO: *.php/something?what=that. Remove them, if you don't need this feature. -->
    <filter>
        <filter-name>PhpCGIFilter</filter-name>
        <filter-class>php.java.servlet.PhpCGIFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>PhpCGIFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <!-- the following adds the JSR223 listener. Remove it if you don't want to use the JSR223 API -->
    <listener>
        <listener-class>php.java.servlet.ContextLoaderListener</listener-class>
    </listener>

    <!-- the back end for external (console, Apache/IIS-) PHP scripts; remove it if you don't need this -->
    <servlet>
        <servlet-name>PhpJavaServlet</servlet-name>
        <servlet-class>php.java.servlet.PhpJavaServlet</servlet-class>
    </servlet>

    <!-- runs PHP scripts in this web app; remove it if you don't need this -->
    <servlet>
        <servlet-name>PhpCGIServlet</servlet-name>
        <servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class>
        <load-on-startup>0</load-on-startup>
    </servlet>


    <servlet-mapping>
        <servlet-name>PhpJavaServlet</servlet-name>
        <url-pattern>*.phpjavabridge</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>PhpCGIServlet</servlet-name>
        <url-pattern>*.php</url-pattern>
    </servlet-mapping>

保存文件。重启tomcat服务器。现在Php文件将在tomcat服务器下运行!

答案 1 :(得分:2)

IIS服务器中存在“www”文件夹而不是apache ... 在apache tomcat服务器而不是“www”中,存在“Root”文件夹 复制该根文件夹中的所有所需文件,并访问该文件

安装任何服务器后,必须重启一次,否则结果无法预测......                           非常感谢

答案 2 :(得分:1)

Use the PHP/Java Bridge。只要您的PHP使用cgi支持进行编译,它就可以无缝地工作。

答案 3 :(得分:0)

Quercus有一个允许在apache tomcat或glassfish中运行PHP脚本的战争。有关分步指南,请查看this文章

答案 4 :(得分:-1)

您应该将您的php文件放在apache安装的www文件夹中,然后您可以从浏览器访问该文件,如下所示:

http://localhost/your_file_name.php

localhost是大多数配置中的默认主机名。