1. 问答
  2. 问答详情

tomcat7配置运行php

1个回答

0

采纳

配置步骤:

1、到D:Applicationphp-5.4.31目录下
将php.ini-development复制一份同一目录下,命名为php.ini
<1>设置extension_dir参数:
extension_dir="D:\Application\php-5.4.31\ext"
<1>设置cgi.force_redirect参数:
cgi.force_redirect = 0
2、打开Tomcat的conf下的context.xml文件
给Context增加属性privileged="true",修改后的Context元素属性如下所示:
<Context privileged="true">
3、打开Tomcat的conf下的web.xml文件
在servlet和servlet-mapping之间增加如下的内容:

<servlet>
        <servlet-name>cgi</servlet-name>
        <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
        <init-param>
          <param-name>debug</param-name>
          <param-value>0</param-value>
        </init-param>
        <init-param>
          <param-name>cgiPathPrefix</param-name>
 <param-value>WEB-INF/cgi-bin</param-value>
        </init-param>
         <load-on-startup>5</load-on-startup>
</servlet>
<servlet>
    <servlet-name>php</servlet-name>
    <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
    <init-param>
        <param-name>clientInputTimeout</param-name>
        <param-value>200</param-value>
    </init-param>
    <init-param>
        <param-name>debug</param-name>
        <param-value>0</param-value>
    </init-param>
    <init-param>
        <param-name>executable</param-name>
        <param-value>D:\Application\php-5.4.31\php-cgi.exe</param-value>
    </init-param>
   <init-param>
       <param-name>passShellEnvironment</param-name>
        <param-value>true</param-value>
    </init-param>
    <init-param>
        <param-name>cgiPathPrefix</param-name>
        <param-value>WEB-INF/php-bin</param-value> 
    </init-param>
    <load-on-startup>5</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>php</servlet-name>
    <url-pattern>/php-bin/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>cgi</servlet-name>
    <url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>

3、脚本存放路径

<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi-bin</param-value>

这里将perl脚本配置的是指向webapps/web-inf/cgi-bin目录下。

<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/php-bin</param-value>

PHP的脚本指向的是webapps/web-inf/php-bin目录下。
4、资源URL路径映射。
这里如果请求的资源是/php-bin/则,指向php服务程序,如果是/cgi-bin/则指向cgi服务程序。

<servlet-mapping>
    <servlet-name>php</servlet-name>
    <url-pattern>/php-bin/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>cgi</servlet-name>
    <url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>


撰写答案

验证码
点击刷新