什么是虚拟主机?如何在 WebSphere Application Server (WAS) 中配置它?
实施 WAS 时您首先听到的术语之一是虚拟主机。我们对虚拟主机和配置指南有很多疑问,因此我们在这里进行了介绍:
- 什么是虚拟主机?
- 如何创建/配置?
- 如何更改现有已部署应用程序的虚拟主机?
- 虚拟主机相关错误
- 最佳实践
那么什么是虚拟主机呢?
虚拟主机允许通过关联的虚拟主机在单个应用程序上使用多个 URL(例如 – example.com、example.net、example.biz、washost:9443、10.10.10.1:9060)。这可以是基于 IP 的或基于名称的。虚拟主机配置是通过 WAS 管理控制台完成的。
虚拟主机还允许您定义 MIME 类型。默认 WAS 安装有两个虚拟主机: admin_host和default_host ,您可以使用它们或为您的应用程序创建新的虚拟主机。看一下下面的虚拟主机图。

现在您已经了解了虚拟主机,是时候创建和配置它们了。
虚拟主机创建是通过位于环境 >> 虚拟主机的 WAS 管理控制台完成的。让我们创建它并将其命名为“sample_hosts”。
- 登录WAS管理控制台。
- 转到环境>>虚拟主机。
- 点击“新建”
您将在上面的列表中看到两个内置虚拟主机,如上所述。

- 输入名称“sample_hosts”

- 单击“确定”
现在您已经有了一个新的虚拟主机,是时候对其进行配置了。
您可以运行两种类型的配置,这两种配置都可以在虚拟主机内的“其他属性”下找到。
主机别名:您可以在此处输入允许应用程序使用该虚拟主机访问的 DNS/主机/IP 名称和端口。
- 转到环境>>虚拟主机。
- 从列表中选择您的虚拟主机
- 点击“主机别名”
- 点击“新建”
- 请输入主机名和端口
- 单击“确定”保存/确认配置。这是我创建的:

MIME 类型:在这里您可以为您的应用程序添加/创建/修改 MIME 类型。然而,默认情况下,WAS 创建了 640 多种 MIME 类型,几乎涵盖了所有类型的应用程序。该默认列表是在您创建虚拟主机时创建的。
- 转到环境>>虚拟主机。
- 从列表中选择您的虚拟主机
- 单击“MIME 类型”
- 单击“新建”以创建它。然而,如上所述,默认列表几乎涵盖了所有类型的应用程序,因此几乎没有必要创建一个。
接下来,更改已部署应用程序的虚拟主机。
在某些情况下,您可能需要根据应用程序分离虚拟主机。以下是更改任何应用程序的虚拟主机的方法:
- 登录WAS管理控制台。
- 转到应用程序 >> Websphere 企业应用程序
- 选择您的应用程序,然后单击 Web 模块属性下的虚拟主机。
- 选择所需的虚拟主机,然后单击“确定”。

- 单击验证/保存配置。虚拟主机必须重新启动JVM才能生效。
您可能有兴趣了解虚拟主机配置存储在virtualhosts.xml中。该位置可能会根据您的环境而有所不同,因此查找 virtualhosts.xml 的确切位置的最佳方法是:
对于 UNIX 环境
find / -name virtualhosts.xml 通过WAS控制台
当您对虚拟主机进行更改时,系统会要求您确认/保存。单击查看可查看要保存配置的虚拟主机的路径。
以下是一些与虚拟主机相关的世界著名的 WebSphere 错误。此错误很可能是由于未配置或配置错误造成的。
与虚拟主机相关的错误
没有定义 Web 组/虚拟主机来处理 /test SRVE0255E:没有定义 Web 组/虚拟主机来处理localhost : 8080 。
如果您在访问应用程序时遇到上述错误,几分钟后您就会知道如何解决。
让我们仔细看看这个错误。有两件事需要注意,我用红色突出显示了。
首先– localhost未定义
应用程序会引发错误,因为每个虚拟主机的主机别名中不存在 localhost。因此,一个简单的解决方案是将 localhost 添加到您的虚拟主机。
如果您有多个虚拟主机并且您的应用程序映射到错误的虚拟主机,也可能会发生这种情况。因此,您应该检查您的配置以确保请求的虚拟主机具有本地主机。
第二– 8080端口号
在大多数情况下,虚拟主机由 URL 和默认 Http/https 端口(80 或 443)组成。但是,如果您想使用 JVM 和端口(绕过 Web 服务器)直接访问您的应用程序,则必须输入 IP。 /Host 别名主机和端口详细信息。
因此,要解决此问题,您需要确保 localhost:8080 添加到您的虚拟主机并映射到相应的应用程序。
本文的最后一部分 – 在 WAS 环境中使用虚拟主机的最佳实践。
每个应用程序都是独一无二的,一种配置可能无法与另一种配置很好地配合。然而,有一些规则对我有用,希望也对你有用。
- 如果单个单元中有多个应用程序,则可以考虑为每个应用程序或至少为应用程序组使用单独的虚拟主机。
- 在进行任何更改之前创建 WebSphere 配置的备份。这样,如果出现问题,您可以将其恢复到原始状态而不会造成任何损坏。
- 对虚拟主机进行更改后,重新启动映射的 JVM 以使配置生效。
- (对于托管Web服务器)传播,生成Web服务器插件,并重新启动Web服务器以使配置生效。
- 请勿在主机别名中包含 *。这意味着可能导致安全漏洞的 URL 是被允许的。
我们希望您现在对 IBM WebSphere Application Server 中的虚拟主机有更好的了解。这就是今天的全部内容。我希望你喜欢它。
如果您想学习 WAS 管理,请查看此Udemy 课程。




![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

