java开发者都知道,tomcat是用来部署java web项目的。前几天老k偶然得知PHP/Java Bridge,通过它可以实现在jsp和php之间共享session,详见《如何实现jsp和php共享sessionphp教程,今天突发奇想,通过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项目名”就可以看到效果了。

如何在tomcat安装部署php项目的更多相关文章

  1. RedHat Linux 5.5安装JDK+Tomcat并部署Java项目

    与大家分享下RedHat Linux 5.5安装JDK+Tomcat并部署Java项目的步骤,希望对大家有用. 1.下载并安装jdk 虚拟机中安装RedHat Linux 5.5 64位企业版, 这里 ...

  2. Tomcat安装部署和安全加固优化以及反向代理应用

    1.Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同 ...

  3. linux 环境下tomcat中部署jfinal项目

    tomcat中部署jfinal项目 问题现象如下图 问题描述: 我在自己的windows7系统上tomcat下面跑这个项目没有任何问题吗,但是当我把项目上传到linux服务器上的tomcatwebap ...

  4. 如何在tomcat前部署一个nginx

    在tomcat应用已经发布后,如何在tomcat前部署一个nginx,可以正常访问jsp,静态资源(html,css,js) 这里tomcat的端口号是8888 upstream morris { s ...

  5. 在Tomcat中部署Web项目的操作方法,maven项目在Tomcat里登录首页报404

     maven项目在Tomcat里登录首页报404, 解决:编辑conf/server.xml进行配置<Host>里的<Context>标签里的path. <Context ...

  6. 在Tomcat中部署web项目的三种方式

    搬瓦工搭建SS教程 SSR免费节点:http://www.xiaokeli.me 在这里介绍在Tomcat中部署web项目的三种方式: 1.部署解包的webapp目录 2.打包的war文件 3.Man ...

  7. Linux安装tomcat并部署JavaWeb项目

    前提条件: 安装tomcat前请确认一下信息: 系统安装了JDK,且JDK版本应与javaWeb所使用的JDK一致,具体操作可参见Linux下安装JDK. 打包了javaWeb的.war 文件,具体操 ...

  8. 【开发工具IDE】eclipse的web项目的tomcat安装部署问题

    一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并 ...

  9. tomcat安装部署

    1.tomcat6 下载地址 http://tomcat.apache.org/download-60.cgi 下载的话,下载那个.tar.gz后缀名的即可. 好像在 Linux.Unix上tomca ...

随机推荐

  1. Linux makefile教程之书写规则三[转]

    书写规则———— 规则包含两个部分,一个是依赖关系,一个是生成目标的方法.在 Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来 ...

  2. 堪称最好的A*算法

    原文地址:http://theory.stanford.edu/~amitp/GameProgramming/ 相关链接:http://www-cs-students.stanford.edu/%7E ...

  3. 设置VMWARE通过桥接方式使用主机无线网卡上网(zz)

    环境:WIN7旗舰版,台式机,U盘无线上网卡. 虚拟软件:VMware9.0,虚拟系统:CentOS6.4 需要实现虚拟机以独立机形式工作和上网. 先介绍一下VMware网络设置的三种方式 1 Hos ...

  4. Yii 实现MySQL多库和读写分离

    前段时间为SNS产品做了架构设计,在程序框架方面做了不少相关的压力测试,最终选定了YiiFramework,至于为什么没选用公司内部的PHP框架,其实理由很充分,公司的框架虽然是“前辈”们辛苦的积累, ...

  5. Windows Server 2012 R2 设置 smtp 服务器

    Windows Server 2012/2012 R2:安装和配置 SMTP 服务器 安装 SMTP 服务器 以下是安装 SMTP 服务器功能的步骤: 打开“服务器管理器”:单击键盘上的 Window ...

  6. python发布模块的原理及部分讲解

  7. redhat Enterprise Linux Server release 7.2(Maipo) 安装redis-stat

    项目需要在rh7.2安装redis-stat,各种编译不过.通过一步步跟踪编译错误日志发现时缺少各种开发库. 需要安装的库列表如下: zlib-devel openssl-devel readline ...

  8. 【LeetCode】168 & 171- Excel Sheet Column Title & Excel Sheet Column Number

    168 - Excel Sheet Column Title Given a positive integer, return its corresponding column title as ap ...

  9. Tex使用

    表格标题改变成中文的"表": \renewcommand{\tablename}{表} 同样图片的Figure改为中文的“图”: \renewcommand{\figurename ...

  10. mapreduce编程模型你知道多少?

    上次新霸哥给大家介绍了一些hadoop的相关知识,发现大家对hadoop有了一定的了解,但是还有很多的朋友对mapreduce很模糊,下面新霸哥将带你共同学习mapreduce编程模型. mapred ...