当前位置:首页 > 行业资讯 > 云服务器 > 正文内容

Linux Apache 配置虚拟主机详解

2025-09-02云服务器659

海外云服务器 40个地区可选            亚太云服务器 香港 日本 韩国

云虚拟主机 个人和企业网站的理想选择            俄罗斯电商外贸虚拟主机 赠送SSL证书

美国云虚拟主机 助力出海企业低成本上云             WAF网站防火墙 为您的业务网站保驾护航


在现代 Web 服务器管理中,Apache 是最常用且最稳定的 Web 服务器软件之一,它支持多种操作系统,尤其在 Linux 系统 中表现尤为出色,为了满足多个网站在同一台服务器上运行的需求,Apache 提供了 虚拟主机(Virtual Host) 功能,通过配置虚拟主机,可以在一台 Apache 服务器上托管多个域名,每个域名可以指向不同的网站内容,本文将详细介绍如何在 Linux 系统下配置 Apache 的虚拟主机

虚拟主机(Virtual Host)是指在一台物理服务器上运行多个网站的服务模式,Apache 通过 基于名称基于 IP 的虚拟主机技术,实现多个网站共享同一台服务器资源。

根据配置方式的不同,虚拟主机主要分为以下两种类型:

  1. 基于名称的虚拟主机(Name-based Virtual Host)
    通过不同的域名访问不同的网站内容,多个域名共享同一个 IP 地址,这是最常见的一种方式,适用于大多数网站托管场景。

  2. 基于 IP 的虚拟主机(IP-based Virtual Host)
    每个网站绑定不同的 IP 地址,适用于需要为每个网站分配独立 IP 的特殊场景,如某些 SSL 证书的使用需求。

在大多数实际应用中,基于名称的虚拟主机更为常见和实用,因为它能够有效节省 IP 地址资源,同时配置也更加灵活。


环境准备

在开始配置虚拟主机之前,确保以下条件已满足:

  • 已安装 Linux 系统(如 CentOS、Ubuntu 等)
  • 已安装 Apache 服务器(如 httpdApache2
  • 具备基本的命令行操作能力
  • 拥有至少两个可用域名或子域名(用于测试)

安装 Apache

Ubuntu 系统为例,安装 Apache 可使用以下命令:

sudo apt update
sudo apt install apache2

对于 CentOS 系统:

sudo yum install httpd

安装完成后,启动 Apache 并设置开机自启:

Ubuntu:

sudo systemctl start apache2
sudo systemctl enable apache2

CentOS:

sudo systemctl start httpd
sudo systemctl enable httpd

配置基于名称的虚拟主机

我们以配置两个网站 example.comtestsite.com 为例,演示如何配置基于名称的虚拟主机。

创建网站目录

为每个网站创建独立的目录,用于存放网站文件:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/testsite.com/public_html

为每个目录创建一个简单的测试页面:

echo "Hello from example.com" | sudo tee /var/www/example.com/public_html/index.html
echo "Hello from testsite.com" | sudo tee /var/www/testsite.com/public_html/index.html

配置虚拟主机文件

在 Apache 中,虚拟主机的配置文件通常位于以下目录:

  • Ubuntu/etc/apache2/sites-available/
  • CentOS/etc/httpd/conf.d/

创建两个配置文件:

1)example.com.conf

sudo nano /etc/apache2/sites-available/example.com.conf
<VirtualHost *:80>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
    CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>

2)testsite.com.conf

sudo nano /etc/apache2/sites-available/testsite.com.conf
<VirtualHost *:80>
    ServerAdmin admin@testsite.com
    ServerName testsite.com
    ServerAlias www.testsite.com
    DocumentRoot /var/www/testsite.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/testsite.com_error.log
    CustomLog ${APACHE_LOG_DIR}/testsite.com_access.log combined
</VirtualHost>

注意:在 CentOS 上,通常将虚拟主机配置文件放置在 /etc/httpd/conf.d/ 目录中,文件名以 .conf 结尾即可。

启用虚拟主机配置

在 Ubuntu 上,使用 a2ensite 命令启用站点配置:

sudo yum install httpd0

然后重新加载 Apache 配置:

sudo yum install httpd1

在 CentOS 上,只需重启 Apache 即可:

sudo yum install httpd2

修改本地 hosts 文件(可选)

如果尚未将域名解析到服务器 IP,可以在本地主机上修改 hosts 文件进行测试:

  • Windows 路径:C:\Windows\System32\drivers\etc\hosts
  • Linux/Mac 路径:/etc/hosts 请将 168.1.100 替换为你的服务器实际 IP):
sudo yum install httpd3

测试虚拟主机配置

打开浏览器,分别访问:

  • http://example.com
  • http://testsite.com

如果能看到不同的测试页面内容,说明虚拟主机已经配置成功。


配置注意事项

在配置过程中,请注意以下几点:

  1. 监听端口:默认情况下,Apache 监听的是 80 端口,如果需要使用其他端口,需在 ports.conf 文件中添加 Listen 8080,并在虚拟主机配置中将端口修改为 *:8080

  2. 权限设置:确保网站目录的权限设置正确,Ubuntu 通常使用 www-data 用户和组,而 CentOS 使用 apache 用户和组。

  3. 日志文件:检查日志文件 /var/log/apache2/(Ubuntu)或 /var/log/httpd/(CentOS)中的错误信息,有助于排查配置问题。

  4. 防火墙设置:确保服务器防火墙允许 80 端口访问,以保证外部可以正常访问网站。

  5. SSL 支持:如需启用 HTTPS,还需为每个虚拟主机配置 SSL 证书,并监听 443 端口。


通过以上步骤,我们成功地在 Linux 系统下配置了 Apache 的虚拟主机功能,无论是用于开发测试,还是生产环境部署,Apache 的虚拟主机功能都能提供灵活、高效的多站点托管方案。

掌握虚拟主机的配置方法,是每一位 Web 管理员或开发者必须具备的基础技能,随着 Web 技术的发展,虽然 Nginx 在高并发场景下越来越受欢迎,但 Apache 凭借其 成熟稳定、模块丰富、兼容性强 等优势,仍然在众多场景中被广泛使用。

合理配置 Apache 虚拟主机,不仅能提高服务器资源利用率,还能提升网站管理的灵活性与可维护性,如果你正在学习 Linux 系统运维或 Web 服务器管理,建议多加练习虚拟主机的配置,理解其原理与细节,将有助于你更深入地掌握 Apache 服务器的使用技巧。


如需进一步学习,建议查阅官方文档或深入了解 Apache 模块如 mod_rewritemod_SSL 等功能,以扩展服务器的功能与安全性。

扫描二维码推送至手机访问。

版权声明:本文由特网科技发布,如需转载请注明出处。

本文链接:https://www.56dr.com/mation/74662.html

分享给朋友:

“Linux Apache 配置虚拟主机详解” 的相关文章

云上生活,如何高效便捷地使用云计算?

云计算是一种通过互联网提供计算资源和软件服务的技术。它允许用户按需访问并使用各种计算服务,而无需拥有自己的硬件设施。随着技术的发展,云计算越来越受到企业和个人的关注。这种解决方案具有高效率、便捷性和灵活性,可以满足不同用户的各种需求。云服务提供商通常会提供优质的支持和服务,帮助用户更好地利用云计算资...

如何挑选最合适的服务器软件平台

在选择适合的服务器平台时,应考虑多种因素,如性能、安全性、成本、可扩展性以及用户需求等。需要评估目标应用对硬件的要求,例如处理能力、内存大小、磁盘存储空间和带宽等。应考虑服务器供应商的声誉、售后服务和技术支持。还可以通过比较不同平台的技术规格和价格来做出决策。还需要关注服务器的兼容性和易用性,确保其...

探索网络世界的广阔无垠

互联网以其丰富的信息资源和便捷的交互方式,为人们提供了前所未有的探索机会。从虚拟世界到现实生活中,网络世界的边界正不断被打破,创造出新的可能。随着信息爆炸和网络诈骗等风险的增加,如何在享受网络便利的同时保护个人信息安全,成为一个重要的议题。在当今数字化的时代,互联网为我们提供了一个无限的资源和可能性...

服务器租用哪个更便宜?

阿里云、腾讯云、华为云等都是热门的服务器租赁平台,选择哪个更便宜取决于多种因素,包括使用场景、网络带宽需求、数据存储需求和服务器配置。建议在购买前进行详细的比较和咨询客服以获取最合适的方案。在当前市场中,选择合适的服务器租用服务对于企业来说至关重要,随着科技的发展和市场的变化,不同平台的定价策略也各...

云端世界,全球视野下的云服务器

在全球化背景下,云服务器以其强大的计算能力和无限扩展性,成为企业存储和处理大量数据的理想选择。通过云端服务,用户可以轻松地访问各种应用、存储设备和工具,从而实现数据的高效管理和安全传输。这些优势不仅提高了业务效率,还降低了运营成本,使得企业在面对快速变化的数据需求时能够从容应对。随着云计算技术的不断...

VPS服务器搭建独立节点,从零开始配置

VPS(虚拟专用服务器)是互联网上的一种计算资源托管方式。搭建一个独立节点通常涉及以下几个步骤:选择合适的VPS提供商、购买或租用服务器、安装操作系统、配置网络设置、安装软件和应用、优化性能等。通过这些步骤,用户可以创建自己的专属服务器环境,进行各种编程、开发和测试工作。在当今数字化时代,VPS(虚...