当前位置:首页 > Ubuntu > 正文

Ubuntu虚拟域配置详解(手把手教你搭建多站点Web服务器)

在使用 Ubuntu 搭建 Web 服务器时,你可能会需要在同一台服务器上运行多个网站。这时就需要用到 虚拟域(Virtual Host) 配置功能。本教程将详细讲解如何在 Ubuntu 系统中通过 Apache 服务器配置虚拟域,实现多站点托管。即使你是 Linux 小白,也能轻松上手!

Ubuntu虚拟域配置详解(手把手教你搭建多站点Web服务器) Ubuntu虚拟域配置 Apache虚拟主机设置 Ubuntu Web服务器配置 多站点托管教程 第1张

一、准备工作

在开始之前,请确保你的 Ubuntu 系统已安装 Apache Web 服务器。如果没有安装,可以通过以下命令安装:

sudo apt updatesudo apt install apache2 -y  

安装完成后,打开浏览器访问 http://你的服务器IP,如果看到 Apache 默认欢迎页,说明安装成功。

二、创建网站目录

假设我们要配置两个网站:site1.example.comsite2.example.com。首先为它们分别创建目录:

sudo mkdir -p /var/www/site1.example.com/public_htmlsudo mkdir -p /var/www/site2.example.com/public_html  

然后设置目录权限,让当前用户拥有这些目录:

sudo chown -R $USER:$USER /var/www/site1.example.com/public_htmlsudo chown -R $USER:$USER /var/www/site2.example.com/public_html  

接着,为每个站点创建一个简单的测试页面:

echo "<h2>欢迎访问 Site 1</h2>" > /var/www/site1.example.com/public_html/index.htmlecho "<h2>欢迎访问 Site 2</h2>" > /var/www/site2.example.com/public_html/index.html  

三、配置 Apache 虚拟主机

Apache 的虚拟主机配置文件通常存放在 /etc/apache2/sites-available/ 目录下。我们为每个站点创建一个配置文件。

1. 创建 site1 的虚拟主机配置:

sudo nano /etc/apache2/sites-available/site1.example.com.conf  

在打开的编辑器中粘贴以下内容:

<VirtualHost *:80>    ServerName site1.example.com    ServerAlias www.site1.example.com    DocumentRoot /var/www/site1.example.com/public_html    <Directory /var/www/site1.example.com/public_html>        Options Indexes FollowSymLinks        AllowOverride All        Require all granted    </Directory>    ErrorLog ${APACHE_LOG_DIR}/site1_error.log    CustomLog ${APACHE_LOG_DIR}/site1_access.log combined</VirtualHost>  

2. 创建 site2 的虚拟主机配置:

sudo nano /etc/apache2/sites-available/site2.example.com.conf  

内容类似,只需修改对应路径和域名:

<VirtualHost *:80>    ServerName site2.example.com    ServerAlias www.site2.example.com    DocumentRoot /var/www/site2.example.com/public_html    <Directory /var/www/site2.example.com/public_html>        Options Indexes FollowSymLinks        AllowOverride All        Require all granted    </Directory>    ErrorLog ${APACHE_LOG_DIR}/site2_error.log    CustomLog ${APACHE_LOG_DIR}/site2_access.log combined</VirtualHost>  

四、启用虚拟主机并重启 Apache

使用 a2ensite 命令启用刚刚创建的虚拟主机:

sudo a2ensite site1.example.com.confsudo a2ensite site2.example.com.conf  

然后重新加载 Apache 配置:

sudo systemctl reload apache2  

五、本地测试(可选)

如果你没有真实域名,可以在本地电脑的 hosts 文件中添加映射进行测试。

Windows 用户: 编辑 C:\Windows\System32\drivers\etc\hosts

Mac/Linux 用户: 编辑 /etc/hosts

添加以下两行(将 你的服务器IP 替换为实际 IP):

你的服务器IP site1.example.com你的服务器IP site2.example.com  

保存后,在浏览器中访问 http://site1.example.comhttp://site2.example.com,你应该能看到各自不同的欢迎页面。

六、总结

通过以上步骤,你已经成功在 Ubuntu 系统中完成了 Ubuntu虚拟域配置,实现了基于 Apache 的 多站点托管。这种配置方式非常适合开发测试环境或小型生产环境。掌握 Apache虚拟主机设置 是运维人员和开发者必备的技能之一,也是构建灵活 Ubuntu Web服务器配置 的基础。

现在你已经可以轻松管理多个网站了!如有问题,欢迎留言交流。