WebLogic Server 8.1虚拟主机配置最佳实践

Posted on 2005-05-30 08:55  数码民工  阅读(1635)  评论(0编辑  收藏  举报

转自:http://dev2dev.bea.com.cn/bbs/yuanch/ArticleShow.jsp?Id=19

本文简要介绍如何在WebLogic Server 8.1下面配置虚拟主机,主要包括一下内容:

环境准备

配置虚拟主机

配置Server的默认Web应用

配置虚拟主机的Web应用

配置虚拟主机的默认Web应用

环境准备

软件平台:Windows 2000 professional + SP4WebLogic Server 8.1 SP2

机器准备: 

机器名

IP地址

用途

ericwang

192.168.80.109

WebLogic服务器

test

192.168.80.110

用于测试的客户端

WebLogic Domain配置:

名称

BEA Home

C:ea

Domain类型

Basic WebLogic Server Domain

Domain Location

C:eauser_projectsdomainsmydomain

Server Name

myserver

Server 监听地址

192.168.80.109

Server 监听端口

7001

WebLogic Configuration Startup Mode

Development mode

myserver的用户名

weblogic

myserver的口令

weblogic

hosts文件:

test机器上的C:WINNTsystem32driversetc目录下面,找到hosts文件,加入以下两行:

192.168.80.109  news.synnex-china.com

192.168.80.109  tech.synnex-china.com

配置虚拟主机

方法一(通过控制台)

console的左边导航栏,中选择mydomain >Services> VirtualHosts,然后在右面点击Configure a new Virtual Host...,在ConfigurationGeneral选项卡下面,填写:

Name: news

Virtual Host Names: news.synnex-china.com

然后点击“apply”,然后到Target and Deploy 选项卡,选中myserver,点击“apply”,这样名称为news的虚拟主机就搭建成功了。

方法二(通过weblogic.Admin工具)

1、创建一个名称为news的虚拟主机,

java weblogic.Admin -url t3://192.168.80.109:7001 -username weblogic -password weblogic CREATE -name news -type VirtualHost

2、设置虚拟主机newsVirtualHostNames

java weblogic.Admin -url t3://192.168.80.109:7001 -username weblogic -password weblogic SET -mbean "mydomain:Name=news,Type=VirtualHost" -property VirtualHostNames news.synnex-china.com

3、把虚拟主机news 部属到weblogic

java weblogic.Admin -url t3://192.168.80.109:7001 -username weblogic -password weblogic SET -mbean "mydomain:Name=news,Type=VirtualHost" -property Targets "mydomain:Name=myserver,Type=Server"

可以任取上面的方法之一,可以创建nametech的虚拟主机,其Virtual Host Namestech.synnex-china.com ,并将虚拟主机tech部署到WebLogic Server上。

配置完成后,重新启动WebLogic Server

配置Server的默认Web应用

1、  参考8.1edocs(http://edocs.bea.com/wls/docs81/index.html ),在webapps目录下面的weblogic.xml中,加入:

  <context-root>/</context-root>

2、  webapps打包成webapps.war文件,然后部属到weblogic server上,部署成功后,console中显示如下:

1 部署webapps.war文件成功后的欢迎画面

3、在test机器上,通过浏览器访问,http://192.168.80.109:7001 ,出现如下画面,说明配置Server的默认Web应用成功。

2 WebLogic Server默认Web应用画面

配置虚拟主机的Web应用

1、将news打包成news.war文件,然后部属到weblogic server上面的news虚拟主机上,成功后,显示如下:

3 部署news.war文件成功后的欢迎画面

2、在test机器上,通过浏览器访问,http://news.synnex-china.com:7001/news ,出现如下画面,说明配置的虚拟主机Web应用成功。

4 虚拟主机newsWeb应用画面

配置虚拟主机的默认Web应用

1、  参考WLS8.1edocs(http://edocs.bea.com/wls/docs81/config_xml/VirtualHost.html#DefaultWebApp)tech目录下面的WEB-INF/weblogic.xml中加入:

<context-root>/</context-root>

然后,部署到WebLogic Server上面的tech虚拟主机上,结果如下:

5 虚拟主机tech部署默认Web应用失败画面1

6 虚拟主机tech部署默认Web应用失败画面2

这说明,在一个WebLogic Server只能存在一个conext-root / WEB应用。这时候,如果删去部署在WebLogic Server上的webappsweb应用,却是可以让虚拟主机tech上的默认web应用部署成功。但这不是我的本意,并且这样做,多个虚拟主机中间只能是一个虚拟主机有默认的web应用。

那如果是这样,如何配置多个虚拟主机的默认Web应用呢?

仔细分析config.xml文件元素的构成后,我决定用兼容WLS7.x的方式设置WLS8.1的虚拟主机的默认web应用。

首先把tech目录下面的WEB-INF/weblogic.xmlcontxt-root项删除,然后重新部署tech应用,最后关闭WebLogic Server。手工改动config.xml文件,具体如下:

        <VirtualHost Name="tech" Targets="myserver" DefaultWebApp="tech" VirtualHostNames="tech.synnex-china.com"/>

保存config.xml后,启动WebLogic Server

2、  test机器上,通过浏览器访问,http://tech.synnex-china.com:7001/ ,出现如下画面,说明虚拟主机的默认Web应用配置成功。

7 虚拟主机tech默认Web应用画面

后记

1、在一个WebLogic Server只能存在一个context / web应用。

2、在WLS8.1中,不能使用weblogic.Admin工具设置虚拟主机的默认Web应用,例如:

java weblogic.Admin -url t3://192.168.80.109:7001 -username weblogic -password weblogic GET -mbean "mydomain:Name=synnex-china,Type=VirtualHost" -property DefaultWebApp synnex

由此可见DefaultWebApp选项已经逐渐被BEA淘汰。

3、可以通过weblogic.Admin工具查看虚拟主机namenews的属性

java weblogic.Admin -adminurl 192.168.80.109:7001 -username weblogic  -password weblogic QUERY -pattern *:Name=news,*

Copyright © 2024 数码民工
Powered by .NET 8.0 on Kubernetes