版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xlyrh/article/details/79207045
资源:http://windows.php.net/download/
1、下载php的程序包,本文环境为windows环境,故下载为zip包
2、解压到tomcat的安装路径下,重命名为php
3、设置环境变量,path添加刚才的路径D:\apache-tomcat-8.0.36\php;
cmd输入php -v 或php -version验证,若返回如下信息则php设置成功
C:\Users\Administrator>php -v
PHP 7.2.1 (cli) (built: Jan 4 2018 04:00:18) ( NTS MSVC15 (Visual C++ 2017) x64
)
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
4、配置php.ini
到php路径下备份php.ini-development,并将原文件修改为php.ini
修改如下配置:
(1)去掉extension_dir = "ext"前面的;
(2)去掉cgi.force_redirect前面的;,并将值修改为0
5、配置tomcat
打开tomcat的conf文件夹,修改context.xml文件,在Context加上属性privileged="true",如图
然后修改web.xml文件,在<web-app>中加入如下<servlet>,其中executable为php-cgi的执行路径
<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:\apache-tomcat-8.0.36\php\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/phpbin</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
并添加如下
<servlet-mapping>,其中url-pattern为php脚本路径
<servlet-mapping>
<servlet-name>php</servlet-name>
<url-pattern>/phpbin/*</url-pattern>
</servlet-mapping>
6、测试
在webapps\ROOT\WEB-INF下新建一个phpbin的文件夹,并将index.php放置其中,内容如下
<?php phpinfo();?>
重启tomcat,在浏览器输入http://localhost:8080/phpbin/index.php,打开界面如下时说明配置成功
后续编写的代码也放到phpbin路径下,即可在浏览器打开。