快速业务通道

在WebSphere Application Server Community Edition上运行PHP

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
t">
  <li><a href="/PHPonWASCE/">Home</a></li>
  <li><a href="/PHPonWASCE/group1">Secured by group1</a></li>
  <li><a href="/PHPonWASCE/group2">Secured by group2</a></li>
</ul>
</div>
<hr />
</div>
</div>
<div id="footer" class="clearfix">PHP on WASCE @ developerWorks</div>
</div>
</body>
</html>

创建test.php文件,这个文件只包含一行简单的打印语句,在浏览器显示的最终页面上我们将看到这 句话被打印在页面的内容部分。页面上会自动添加我们需要的其他元素。test.php文件包含如下内容:

程序清单 7. test.php <?php
print "This is from test.php";
?>

现在我们可以在WASCE上运行test.php(右键点击test.php然后选择Run As -> Run on Server)。 你可以发现呈现出来的页面内容要远比test.php本身输出的内容多很多。增加的内容包括页面的标题,一 张漂亮的图片,左侧的导航栏以及页脚。所有这些额外的元素都是由SiteMesh自动添加的。通过使用 SiteMesh,我们可以专注在页面的核心内容部分。在这个例子中我们看到了PHP应用也可以使用SiteMesh 这样强大的Java框架了!

图 10. 经过Sitemesh修饰过的PHP页面

在WebSphere Application Server Community Edition上运行PHP

使用Java CMS来控制对PHP应用的访问

通过PHP Integration Kit,我们可以使用J2EE容器控制的安全性(CMS)来控制对PHP应用的访问。在 处理用户的请求之前,WASCE会首先验证用户的权限。我们可以配置什么样的用户或者用户组可以访问哪 些页面。我们可以配置基于URL 模式进行验证,无论用户请求的是PHP页面还是一个Servlet。

创建用户和组的属性文件

我们首先需要建立2个属性文件分别对用户和组进行定义,在用户的定义文件中包含的是用户名和密码 ,在组的定义文件中包含的是组的名称和组里面所包含的成员的定义。

在<WASCE_HOME>/var/security/目录下创建PHPUser.properties文件。这里 <WASCE_HOME>代表WASCE的安装路径。

程序清单 8. PHPUser.properties user1=password1
user2=password2
user3=password3
user4=password4

在<WASCE_HOME>/var/security/目录下创建PHPGroup.properties文件

程序清单 9. PHPGroup.properties AdminGroup=user1,user2
UserGroup=user3

在<WASCE_HOME>下创建php-security-realm.xml文件。这个文件是用来配置j2ee安全性的部署 文件。

程序清单 10. php-security-realm.xml <module xmlns="http://geronimo.apache.org/xml/ns/deployment-1.1">
  <environment>
  <moduleId>
    <groupId>console</groupId>
   <artifactId>realm-php-properties- realm</artifactId>
   <version>1.0</version>
    <type>car</type>
  </moduleId>
  <dependencies>
    <dependency>
    <groupId>geronimo</groupId>
     <artifactId>j2ee-security</artifactId>
     <type>car</type>
   </dependency>
  </dependencies>
  </environment>
 <gbean name="php-properties-realm"
     class="org.apache.geronimo.security.realm.GenericSecurityRealm">
  <attribute name="realmName">php-properties-realm</attribute>
  <reference name="Ser

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号