fgswe 发表于 2015-2-13 09:25:26

tomcat8支持CGI

一、环境windows server 2003R2 tomcat8 PHP5 MySQL5很多文档要求将server/lib下servlets-cgi改名为servlets-cgi.jar。从6版本以后,好像就没有server目录,内部已经自动支持cgi,只需要进行配置即可。Tomcat需要JDK 1.6以上,所以JDK需要先安装好。
二、配置步骤:1、到C:\php-5.3.10-Win32-VC9-x86目录下将php.ini-development复制一份同一目录下,命名为php.ini<1>设置extension_dir参数:extension_dir="C:\php-5.3.10-Win32-VC9-x86\ext"<1>设置cgi.force_redirect参数:cgi.force_redirect = 0
2、修改tomcat配置文件
<1>修改conf/web.xml,找到并将cgi的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>executable</param-name> <param-value>C:\php-5.3.10-Win32-VC9-x86\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/..</param-value>      </init-param>         <load-on-startup>5</load-on-startup>    </servlet>
    <servlet-mapping>      <servlet-name>cgi</servlet-name>      <url-pattern>*.php</url-pattern>    </servlet-mapping>
<2>修改conf/context.xml
<Context privileged="true">
<3>修改默认网站根目录conf/server.xml
    <Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" />
      <Host name="localhost"appBase="webapps"            unpackWARs="true" autoDeploy="true">
<Context path="" docBase="ROOT\WEB-INF\php-bin" debug="0" reloadable="true"></Context>
三、测试建立index.php文件<?php phpinfo();?>
http://10.0.1.11:8080/index.php不出意外应该能看到PHP的测试页


页: [1]
查看完整版本: tomcat8支持CGI