首页 > 代码库 > 如何在tomcat安装部署php项目

如何在tomcat安装部署php项目

java开发者都知道,tomcat是用来部署java web项目的。前几天老k偶然得知PHP/Java Bridge,通过它可以实现在jsp和php之间共享session,详见《如何实现jsp和php共享session》php教程,今天突发奇想,通过PHP/Java Bridge能不能把一个完全用php开发的项目部署到tomcat里,尽管意义不是很大,但对于那些需要在java项目里集成php开发的模块的话还是很有用的。说干就干,我马上去PHP/Java Bridge的官网看了,原来它还真可以用于将php项目部署到tomcat的用途,官方提到可以将Moodle、mediaWiki、Joomla等php开源项目部署到tomcat。下面是详细步骤。

1.环境准备

将php项目部署到tomcat并不意味着不需要安装php了,事实上,还是需要安装php环境的,老k安装的是xampp,这样很方便就安装了php环境,xampp的安装教程请参考《如何安装xampp》;除了php之外还需要安装java虚拟机和tomcat。这些工具的最低配置为php 5.x、java 6或以上、tomcat 6或以上。

2.配置tomcat

将PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar复制到tomcat的lib目录下;

修改tomcat安装目录下conf文件夹里的web.xml文件,在web-app标签里增加以下的代码;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<listener>
 <listener-class>php.java.servlet.ContextLoaderListener</listener-class>
 </listener>
 <servlet>
 <servlet-name>PhpJavaServlet</servlet-name>
 <servlet-class>php.java.servlet.PhpJavaServlet</servlet-class>
 </servlet>
 <servlet>
 <servlet-name>PhpCGIServlet</servlet-name>
 <servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class>
 <init-param>
 <param-name>prefer_system_php_exec</param-name>
 <param-value>On</param-value>
 </init-param>
 <init-param>
 <param-name>php_include_java</param-name>
 <param-value>Off</param-value>
 </init-param>
 </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>

接着在welcome-file-list标签里增加下面这一行代码

1
<welcome-file>index.php</welcome-file>

3.部署php项目

直接到php项目复制到tomcat的webapps目录下,然后启动tomcat,在浏览器输入“http://localhost:8080/php项目名”就可以看到效果了。