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

Ubuntu Apache虚拟主机配置(手把手教你搭建多个网站)

在使用 Ubuntu 搭建 Web 服务器时,Apache 虚拟主机配置 是一项非常实用的技能。通过虚拟主机(Virtual Host),你可以在同一台服务器上托管多个网站,每个网站拥有独立的域名、目录和配置。本教程将从零开始,详细讲解如何在 Ubuntu 系统中配置 Apache 虚拟主机,即使你是 Linux 小白也能轻松上手。

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

一、准备工作

确保你的 Ubuntu 系统已安装 Apache。如果没有,请打开终端并执行以下命令:

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    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    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,macOS/Linux 用户修改 /etc/hosts,添加如下内容:

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

保存后,在浏览器中访问 http://site1.example.comhttp://site2.example.com,即可看到各自的内容。

六、常见问题与总结

完成以上步骤后,你就成功配置了 Ubuntu Apache 虚拟主机!这项技能对于学习 Apache 多站点配置、搭建开发环境或部署多个项目非常有帮助。

如果遇到 403 或 404 错误,请检查:

  • 目录权限是否正确
  • DocumentRoot 路径是否准确
  • Apache 是否已重载配置
  • 防火墙是否放行 80 端口

通过本教程,你已经掌握了 Ubuntu Web服务器设置 中的关键环节。希望这篇 Apache虚拟主机教程 能为你后续的 Web 开发或运维工作打下坚实基础!