原文:http://blog.csdn.net/AbnerChai/archive/2004/06/23/24199.aspx
作者:abnerchai
在本文中,你可以学习到:
• 使用 IBM HTTP Server 的好处有哪些
• 如何配置 IBM HTTP Server和IBM WebSphere Application Server连接
• 如何发布 ear包使之能优化IBM WebSphere Application Server性能
• 一个示例
前言
大家都知道, IBM 的 WebSphereApplicationServer( 简称 WAS) 是一个企业的级 EJB 容器,它本身具有容纳 EJB , Servlets , JSP , HTML 等功能,也就是说, WAS 它本身同时具备 EJB 容器和 WebServer 的功能。
我们单纯的 WebServer 如 IIS,Apache,IBM HTTP Server( 简称 IHS) ,它们只具有处理静态 HTML 页面的功能,不具有 EJB 容器的功能。
我们通常在安装 IBM WebSphere 包时,可以选择安装 WAS 和 IHS 两个部分。它们可以安装在同一个物理主机上,也可以分开安装在不同的主机上。
WAS 在处理静态的 HTML 页面及一些图片文件时,它是通过 Java 输入和输出流来进行和客户端通信的。而 IHS 是在 Apache 的基础上修改而来的,它是用 C 语言来处理用户的对静态文件的请求。相比之下, IHS 处理静态文件的速度要快一些。同时,如果我们能够让二则连接起来成为一个整体,对客户端用户来说是透明的,让 WAS 做 EJB 容器处理动态请求,让 IHS 处理静态文件,有以下好处:
• IHS 能够以更快的速度处理静态请求,在许多商务应用中,对于 html 页面的请求和对于 JSP/Server 的请求及对于后台 EJB 的请求数量是递减的。在这种情况下,可以让 IHS 分担 WAS 的负担。
• 可以把 IHS 和 WAS 分别装在不同的物理主机上,这样可以让 IHS 处于 DMZ 区域,而让 WAS 处于受保护区域,提高安全性。具体这一部分,可以参考其它网络拓朴资料。
• 当企业应用增大时,我们需要利用集群技术来达到负载均衡,这时候,可能需要多个 WAS 节点并通过 ND ( NetworkDeploymentManager )来管理它们。这时必须要有一个 IHS 在前面提供这种分发功能。也就是说,利用 IHS 可以为以后扩展做更好的准备。
具体来说, IHS 和 WAS 的连接是通过一个叫 WebServerPlug-in 的来连接它们的。它们的拓朴结构图可以如下所示:
上图的清晰足以不再说明。
前提条件
要想让 IHS 和 WAS 连接起来,我们必须在安装 WEBSphere 包时,选择自定义安装,并选中“ Plug-in For IBM HTTP Server ”。同时,我们需要安装 IHS 和 WAS 。在本文中,我们以 IHS 和 WAS 装在同一台主机上为例说明。
设: WAS 安装在 D:\WebSphere511\WebSphere\AppServer 下面。
IHS 安装在 D:\WebSphere511\IBMHttpServer 下面。
其次,我们需一个还没有打包的 WSAD 工作区,我们在最后打包时,要进行一些设置以满足要求。注意,这个工作区必须是最后马上要打包发布的工作区。
在开始之前,我们先启动 IHS 和 WAS ,在 IE 中输入:
http://localhost:9080/snoop/ 看是否正确安装
好了,一切好了,我们来看如何配置。
配置步骤
用 WSAD5 启动最后需打包的工作区,进入开发环境的 J2EE 视图,双击打开 ”WEB Content” 目录下的“ WEB-INF ”目录下的 web.xml 文件,进入 XML 编辑器,选中扩展页面,如下图所示:
在上图中,将“启用了文件服务”前的 √ 去掉。保存。
2 、打包工作区,将系统输出为 ear 包或输出为 jar 包和 war 包两部分均可以。
3 、进入 WAS 管理工作台,配置 J2C 认证和 JDBC 数据源,成功发布刚才导出的 ear 包。
4 、选择 WAS 管理工作台左边的“环境” -> “ 更新 Web 服务器插件 ”,并在右边选择“确定”。
5 、然后退出 WAS 管理工作台,进入 WAS 安装目录:
D:\WebSphere511\WebSphere\AppServer\config\cells ,确认目录下的 plugin-cfg.xml 是新生成的。
6 、进入 IHS 安装目录: D:\WebSphere511\IBMHttpServer\conf ,并用文本编辑器打开其下的
httpd.conf 文件,将光标移动到最后一行,确认最后两行为:
LoadModule ibm_app_server_http_module “D:\WebSphere511\WebSphere\AppServer/bin/mod_ibm_app_server_http.dll"
WebSpherePluginConfig "D:\WebSphere511\WebSphere\AppServer/config/cells/plugin-cfg.xml"
即需确认这两个文件指向正确的位置且, plugin-cfg.xml 指向的是刚刚生成的。
同时找到类似下面的两行:
# TIHS should be changed to whatever you set DocumentRoot to.
<Directory "D:\WebSphere511\IBMHttpServer/htdocs/Zh_CN">
可以看出,这一行是设置 IHS 的根目录所在的位置。你可以修改它也可以不修改。比如我们这里把它修改为:
<Directory “D:\WebSphere511\IBMHttpServer/htdocs/MyProject”>
注意上面的路径分隔符的写法,同时,请在 D:\WebSphere511\IBMHttpServer\htdocs\ 下建一个目录 MyProject 。
同时找到 DocumentRoot 这一行,把它修改为:
DocumentRoot d:/websphere511/ibmhttpserver/htdocs/MyProject
这样使得 IHS 的根目录指向这个目录。
7 、生新启动 IHS 和 WAS 。
8 、进入 WAS 安装目录下的:
D:\WebSphere511\WebSphere\AppServer\installedApps\abnerchai 目录,其中 abnerchai 是以你的主机的名字命名的目录,找到该目录下刚才发布的那个 ear 包目录,并进入该目录下的 x.war 的这个目录中,在这个目录是存放的是你的所有有 HTML 文件和 JSP 及其它的 IMG 文件等,这个目录也是根目录,把这个目录下的所有的静态文件如 images 目录等拷贝一份到刚才 IHS 的根目录下。
9 、重启 IHS 服务器即可以 :
http://xxx.xxx.xxx/yourApplicationname/ 来访问你的系统了。
附录:举例:
现在 WSAD 中 WEB Content 目录下有一个 JSP 文件如下所示:
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< HTML >
< HEAD >
<%@ page language = "java" contentType = "text/html; charset=GBK" pageEncoding = "GBK" %>
< META http-equiv = "Content-Type" content = "text/html; charset=GBK" >
< META name = "GENERATOR" content = "IBM WebSphere Studio" >
< TITLE > index.jsp </ TITLE >
</ HEAD >
< BODY >
< p >< img src = "images/cz.jpg" ></ img >
< p >< a href = "in.html" > 静态 HTML </ a >
<%
out.println( "<p>这是动态输出!</p>" );
%>
</ BODY >
</ HTML >
同时,在 WEB Content 目录下有一个 in.html 文件和一个 images 目录,其下有一个 cz.jpg 文件。
同时在工作区中还有一些 JavaBean 和 EJB ,用上述方式发布 EAR 包后,名字为:
HelloWorldEARProject.ear
在 WAS 中发布并更新插件后,重启 IHS 和 WAS 。在:
D:\WebSphere511\WebSphere\AppServer\installedApps\abnerchai\HelloWorldEARProject.ear
目录下,有一个 HelloWorldWebProject.war 目录,其下含有 images 目录和 in.html 文件,我们可以通过 http://localhost/HelloWorldWebProject/index.jsp 访问它 ( 这时看不到图片和静态连接不正确,因为 WAS 己设置成不处理这些静态文件 ) 。
这时我们可以这么做,在:
D:\WebSphere511\IBMHttpServer\htdocs\MyProject 目录下新建一个 HelloWorldWebProject 目录,把 images 目录和 in.html 拷贝到该目录下即可。
最后,它们的目录结构如下所示:
这是 IBM HTTP Server 的目录
这是 IBM Websphere Application Server 的目录 ( 发布后 ) 。
Copyright
Copyright by abnerchai, 2004. you can contact me at: abnertsai@sina.com
分享到:
相关推荐
3. **配置服务名称**:确保服务器名称不包含特殊字符或下划线“_”,否则可能导致服务无法正常启动。 **为WebSphere打补丁**: 1. **停止相关服务**:在“控制面板” > “性能与维护” > “管理工具” > “服务”...
本文将介绍IHS的SSL配置方法,包括创建密钥文件、配置httpd.conf文件和启用SSL加密。 一、创建密钥文件 首先,需要创建一个密钥文件,用于加密和解密数据。在IHS中,可以使用GSK(Global Security Kit)工具创建...
### WebSphere 集群部署详解(含MQ、Oracle和IHS配置) #### 一、概述 本文将详细介绍如何在WebSphere环境下搭建集群,并配置相关的MQ、Oracle数据库以及IHS(IBM HTTP Server)等组件。这是一篇面向高级系统管理...
总的来说,这个文档为IT专业人员提供了一个详细的WAS9集群和IBM HTTP Server 9部署流程,帮助他们顺利实施企业级的应用服务部署。通过遵循这些步骤,可以有效地提高系统的稳定性和可用性,同时优化性能,满足高并发...
对于使用IBM DB2作为数据库管理系统以及WebSphere Application Server (WAS)作为应用服务器的企业而言,理解如何诊断和解决DB2和WAS的性能问题是至关重要的。 #### 二、检查WebSphere Application Server状态 当...
5. **进入应用服务器Default Server的“服务”标签,选择“Web容器服务”** 6. **编辑特性,进入“传输”标签,增加HTTPS传输** - 具体设置如下: - **端口**:443 - **协议**:HTTPS 7. **点击“应用”按钮**...
在整个集群的创建过程中,会涉及到服务器的配置、数据库的安装和配置、安全设置(如Active Directory的配置)、集群节点的联合以及集群资源的优化等重要知识点。这些操作通常需要专业的IT技术人员来进行,并且需要...
在项目中,你需要配置Web应用程序信任LTPA令牌,这样当用户通过SSL连接登录到一个应用后,他们可以无缝地访问其他信任该令牌的应用,无需再次输入凭证。具体的SSO配置过程可能包括在WebSphere中配置安全域、设置LTPA...
- **查看日志文件**: 检查`/usr/IBMHttpServer/logs/error.log`文件中是否存在任何错误信息,特别是与连接相关的异常。 **2. 检查 WebSphere (WAS) 状态** - **直接访问 WAS 的 Web 容器端口**: 使用类似于检查 ...
- **服务管理:** 通过“控制面板 > 管理工具 > 服务”,找到并启动 `IBMHTTPAdministration6.0` 和 `IBMHTTPServer6.0` 服务。 **3. 验证 HTTP Server 工作状态** - **访问测试页面:** 浏览器访问 `...
- **系统服务定义**:决定是否将WAS作为Windows服务运行,便于后续管理和监控。 ##### 5. 启动Deployment Manager - **使用控制台或命令行启动**:在`bin`目录下执行`startManager`命令(Unix下为`./startManager....
在Windows环境下实现IBM WebSphere Application Server (WAS)与IBM HTTP Server (IHS)的集成是一种常见的配置方式,用于提高Web应用的安全性和性能。本文将详细介绍该集成过程中的关键步骤和技术要点。 #### 二、...