CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > 技巧

在 WAS CE上运行 PHP

作者: 郑 溪龙,  出处:developerWorks 中国, 责任编辑: 叶江, 
2007-06-28 14:04
  在 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脚本在WASCE中的生命周期

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

  •   将PHP脚本打包在WAR文件中
  •   将包含FastCGI filter实现的jar文件打包到WEB-INF/lib目录
  •   在web.xml文件中添加一些定义,让FastCGI filter来处理包含扩展名.php的URL请求
    共2页。 1 2 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i