IBM HTTP Server 是基于Apache HTTP Server的Web服务器。它负责处理来自客户端的HTTP请求,并向它们发送相应的HTTP应答。通常,IBM HTTP Server被用来处理静态内容,包括HTML页面和Applet等,因此经常为应用服务器提供辅助功能。在此,将IBM HTTP Server(以下简称IHS)和WebSphere Application Server Community Edition(以下简称WASCE)配合使用有下几个益处:
|
ServerRoot "C:/Program Files/IBM/IHS7"
# 在80端口侦听 Listen 0.0.0.0:80
# 用户能访问的文件根目录,默认为服务器安装目录下的htdocs文件夹 DocumentRoot "C:/Program Files/IBM/IHS7/htdocs"
# DocumentRoot文件夹的访问控制 # 允许在此目录中使用符号连接。如果一个映射到目录的URL被请求,而此目录中又没有 index.html等索引页面,那么服务器会返回一个格式化后的目录列表。 Options Indexes FollowSymLinks # 禁止使用.htaccess文件 AllowOverride None # 规定allow和deny的优先级次序 Order allow,deny # 允许所有用户访问DocumentRoot Allow from all |
LoadModule status_module modules/mod_status.so
# 如果status模块被加载,则请求状态的扩展信息 ExtendedStatus On |
通常我们还需要用

LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so
<IfModule mod_proxy.c> # 将WASCE的服务器下/console映射到IHS空间中,若WASCE不在本机,localhos # 应为WASCE的IP地址或可识别的主机名,8080为WASCE的HTTP端口。 ProxyPass /console http://localhost:8080/console
# 对所有WASCE 8080端口的访问作出的HTTP回复将只体现 IHS的URL ProxyPassReverse / http:// localhost:8080 IfModule> |

用户可以通过访问https://形式的URL来得到经SSL加密的内容。这样,用户既可以通过http://访问非安全的内容,也可以通过https访问到需要身份验证才能获取的特定内容。
WASCE本身具有密钥库(keystore)和密钥(key)的配置功能,并且有Certificate Authority用于生成并发布证书,以支持较强的用户身份验证方法。我们可以自定义HTTPS连接器,还可以发布自签名的证书用于测试。用户可以访问8443端口(https://
IHS附带有Key Management Utility工具用于管理密钥和证书。我们就借助这个工具创建自签名证书。
<!--[if !supportLists]--> <!--[endif]--><!--[if !supportLists]-->2) <!--[endif]-->输入密码并且将保存至文件。默认情况下它被保存到了
<!--[if !supportLists]-->3) <!--[endif]-->创建自签名证书。注意,只有在某些测试环境下,才使用自签名证书,否则应该向证书颁发机构 (Certificate Authority) 申请有效证书。
事实上Key Management Utility还提供了创建证书请求,接收证书请求,抽取证书等功能。
LoadModule ibm_ssl_module modules/mod_ibm_ssl.so # 在443端口侦听 Listen 443 # 仅作用于443端口上的虚拟主机 # 开启SSL功能 SSLEnable KeyFile "c:/Program Files/IBM/IHS7/testkey.kdb"ProxyPass /console http://localhost:8080/console ProxyPassReverse / http://localhost:8080/
SSLDisable |
4.
IHS还能帮助WASCE构成集群环境。集群 (cluster) 功能可以大幅度提高系统和应用的可用性和可靠性。 WASCE的Web容器Tomcat具备集群功能,它通过在集群中的多点广播 (multicast) 实现HTTP会话的复制,并且确保一个用户发向某一个节点的后续请求仍然会由同一个节点处理, 这被称为session affinity。 IHS7.0为WASCE提供了专用的AJP代理模块和均衡模块,位于 我们将借用WASCE示例[4]中用于展示Tomcat集群功能的例子, 说明WASCE和IHS分别需要怎样的配置步骤。 clusterName=mycluster PortOffset=0 clusterName=mycluster PortOffset=10 3) 分别启动两个WASCE实例。在启动第二个实例前,首先用set命令设置环境变量(注意命令写在一行): 4) LoadModule proxy_module modules/mod_proxy.so <IfModule mod_proxy.c> # 配置名为mycluster的均衡器, 两个节点的负载本别是50%。8009和8019分别是两个节点的AJP端口。 <Proxy balancer://mycluster> BalancerMember ajp://localhost:8019/servlet-examples-cluster loadfactor=50 route=NODE2 Proxy> # 用 mycluster来处理servlet-examples-cluster 这样的URL ProxyPass /servlet-examples-cluster balancer://mycluster/ stickysession=JSESSIONID IfModule> # 可以用IHS的balancer-manager来管理这个集群的成员和负载 <Location /balancer-manager>
5. 总结 [1] IBM WebSphere Application Server 文档: http://publib.boulder.ibm.com/wasce/V2.1.1/en/index.html /0606_chillakuru/0606_chillakuru.html [4] 为WASCE配置集群环境: [5] WASCE示例下载:http://download.boulder.ibm.com/ibmdl/pub
LoadModule proxy_ajp_module modules/WebSphereCE/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/WebSphereCE/mod_proxy_balancer.so
BalancerMember ajp://localhost:8009/servlet-examples-cluster loadfactor=50 route=NODE1
SetHandler balancer-manager
[2] Apache HTTP Server 2.2 文档:http://httpd.apache.org/docs/2.2/
[3] 在WASCE中使用数字证书对客户机进行身份验证:
http://www.ibm.com/developerworks/cn/websphere/library/techarticles
http://www.ibm.com/developerworks/cn/websphere/library/techarticles
/0606_zhangsong/
/software/websphere/wasce/
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21588830/viewspace-594872/ ,如需转载,请注明出处,否则将追究法律责任。