在WebSphere Application Server Community Edition上运行PHP

简介:在 web 开发中 PHP 一直占据着一席之地,无论是小型规模的 web 应用,还是像 Yahoo 这样 的大型网站。PHP 和 Java 一直是以竞争对手的形式出现,如果我们能够同时使用 PHP 和 Java,那么这 种互相竞争的现状就可能改变。把 PHP 的灵活性和 Java 的强大功能结合起来,开发 web 应用可能不再 像今天这么复杂,而会变成一种享受。本文将介绍一种可以结合使用 PHP 和 Java 的方法,通过 PHP Integration Kit 让 IBM 的开源服务器 WebSphere Application Server Community Edition 支持 PHP 脚本。通过学习本文,读者可以掌握 PHP Integration Kit 的原理;文中的样例说明这种技术的可行性 。

背景和工作原理

PHP是一种在web应用开发中非常受欢迎的脚本语言。当我们使用PHP作 为服务器端脚本时(本文将不会讨论以命令行的方式运行PHP和使用PHP编写桌面应用程序),需要运行在 Apache HTTP服务器或者Microsoft IIS这样的web服务器上。虽然我们可以在Apache HTTP服务器上同时配 置PHP和JSP支持,但是需要将PHP和JSP请求分别转发到相应的PHP引擎或者Java应用服务器,在PHP脚本和 JSP代码之间没有建立关系,也不能在一个HTML页面中混合使用PHP脚本和JSP代码。通过PHP Integration Kit for WebSphere Application Server (WAS),Community Edition (CE),我们可以将PHP脚本集 成到Java 2 Enterprise Edition (J2EE)应用中,例如通过Container Managed Security (CMS) 来控制对PHP脚本的访问权限,通过WAS CE的管理控制台来安装/更新PHP应用,还可以通过Java Filter技 术来修饰包含PHP脚本的HTML页面。您可以在IBM alphaWorks网站找到这个项目的最新信息,目前支持的 平台有Windows和Linux,不过现在这个项目还不能使用在产品环境中。

PHP Integration Kit通过 在Servlet容器中配置FastCGI filter,将PHP脚本请求转发到PHP引擎。PHP Integration Kit提供了一个 launcher来调用PHP引擎。需要指出的是PHP Integration Kit并没有重新构建一个PHP的引擎,而是需要 利用现有的PHP引擎(这个比较容易理解,因为PHP引擎是由PHP.net提供和维护的)。如果系统中安装有 多个版本的PHP引擎,可以在web部署描述文件web.xml中对PHP引擎进行配置。图1简单说明了PHP脚本在 WASCE中的生命周期。

图 1. PHP脚本在WASCE中的生命周期

部署: 为了让PHP Integration Kit能够运行PHP脚本,PHP应用需要通过一种特殊的方法来进 行打包和部署。下面将详细描述具体的步骤,简单来说,打包的方式需要遵从Java企业应用WAR模型的要 求。

时间: 2024-11-03 21:28:30

在WebSphere Application Server Community Edition上运行PHP的相关文章

为WebSphere Application Server Community Edition开发富Internet应用程序

本文配套源码 引言 Ajax(异步JavaScript和XML)术语用于表示一组支持创建富Internet应用程序 (Rich Internet Application) 的技术.通过使用这些技术,可以创建响应能力强且具有与桌面应用程序类似的丰富用户界面的Web应用程序.这些技术允许在后台以异步方式检索数据,而不会影响所显示的页面,而且可以仅请求数据,而不用请求整个HTML页面.可以使用现在的浏览器提供的XmlHttpRequest或等效对象进行此异步后台通信. IBM WebSphere Ap

为WebSphere Application Server Community Edition V2.1构建WADI集群环境

从 WebSphere Application Server Community Edition ( 以下简称 WAS CE) 版本 2.1 以来,WAS CE 在 Tomcat native 集群之外,新增了对 WADI 集群的支持.相比于 Tomcat native 集群,WADI 集群同样提供了集群成员间 Session 复制来避免单点失效并实现灾难恢复,同时利用负载平衡来提高应用程序的可用性.另外在一个部署了 Farming 的 WAS CE 集群环境中,如果您在某个节点上进行应用程序部

WebSphere Application Server Community Edition中的应用程序日志记录

引言 应用程序日志记录提供了捕获在应用程序执行期间发生的各种事件的方法.它将收集关于应用程序在执行各种任务时在做什么的详细信息.此信息在调试.故障排除甚至审核方面很有用.WebSphere Application Server Community Edition(以下称为 Community Edition)提供了各种库,可帮助应用程序开发人员配置日志记录服务.这些库是: Log4j SLF4j java.util.logging java.util.logging 包是可用于所有标准 Java

WebSphere Application Server Community Edition入门

引言 IBM WebSphere Application Server Community Edition 是在 Apache Geronimo 之上构建的 Java 2 Platform, Enterprise Edition (J2EE) 应用服务器,由 Apache Foundation 创建的开放源代码应用服务器. 什么时候使用 WebSphere Application Server Community Edition 什么时候应该使用 WebSphere Application Se

在WebSphere Application Server Community Edition中配置Kerberos验证

WebSphere Application Server Community Edition 目前不支持 Kerberos 验证.本文介绍如何利用 IBM Java Platform 提供的 Kerberos,实现在 WebSphere Application Server Community Edition 中执行 Kerberos 验证. 简介 IBM WebSphere Application Server Community Edition V2.1.1.2 (以下简称为 Communi

在WebSphere Application Server V7上使用IBM solidDB V6.3和OpenJPA

Java Persistence API(JPA)是 Enterprise JavaBean (EJB) 3.0规范的一部分.JPA可用于Java Standard Edition(Java SE)和Java Enterprise Edition(Java EE)应用程序.IBM solidDB 是一个内存关系数据库,它的速度最高可达常规数据库的10倍.solidDB支持Java Database Connectivity (JDBC) 2.0规范.许多Java SE和 Java EE 应用程序

端口冲突导致WebSphere Application Server无法正常启动的解决方法

在客户使用 WebSphere Application Server 时可能遇到这样的问题,同一台物理主机上的一个 server 工作正常,而另一个 server 却不能正常启动,这可能是因为多个 server 间端口冲突引起的.Profile Port Checker 是 IBM 提供的一款免费的工具,用于提供冲突端口检测的服务.本文将详细介绍 Profile Port Checker 的安装过程,以及各个命令的功能,并利用实例来展示如何使用 Profile Port Checker 来检测实

用Profile Port Checker解决WebSphere Application Server端口冲突问题

引言 在客户使用 WebSphere Application Server 时可能遇到这样的问题,同一台物理主机上的一 个 server 工作正常,而另一个 server 却不能正常启动,这可能是因为多个 server 间端口冲突引起的. Profile Port Checker 是 IBM 提供的一款免费的工具,用于提供冲突端口检测的服务.本文将详细介绍 Profile Port Checker 的安装过程,以及各个命令的功能,并利用实例来展示如何使用 Profile Port Checker

WebSphere Application Server中现代化的基于Java的批处理(一)

介绍 Modern Batch 和计算密集型的编程模型 简介 批处理程序是任何企业 IT 领域的一个传统且不可或缺的组件.目前的批处理发展趋势是将内部的 Java 技能应用于在线程序和批处理程序上,以确保: 最大限度地提高实现的重用. 更轻松的开发和维护,因为使用了相同的工具集. 企业标准和服务质量实施上的一致性. IBM 开发的解决方案提供了一种具有凝聚力的批处理程序管理模式.IBM WebSphere Application Server 的 Modern Batch 功能(可用于 WebS