温馨提示×

ubuntu apache怎么建虚拟主机

小樊
40
2026-10-02 06:01:41
栏目: 云计算

在 Ubuntu 上使用 Apache 建立虚拟主机(Virtual Host),通常步骤如下(以 Ubuntu 20.04/22.04 为例):


一、前提条件

  1. 已安装 Apache
sudo apt update
sudo apt install apache2
  1. 有域名(如 example.com)或仅用本地测试(改 hosts)

二、创建网站目录

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

设置权限:

sudo chown -R $USER:$USER /var/www/example.com
sudo chmod -R 755 /var/www/example.com

创建测试页面:

nano /var/www/example.com/public_html/index.html

示例内容:

<h1>Welcome to example.com</h1>

三、创建虚拟主机配置文件

Apache 虚拟主机配置在:

/etc/apache2/sites-available/

新建配置文件:

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

    <Directory /var/www/example.com/public_html>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
    CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>

四、启用虚拟主机

sudo a2ensite example.com.conf

可选:禁用默认站点

sudo a2dissite 000-default.conf

五、测试并重启 Apache

检查配置:

sudo apache2ctl configtest

重启服务:

sudo systemctl restart apache2

六、本地测试(无域名)

编辑 hosts 文件:

sudo nano /etc/hosts

添加:

127.0.0.1 example.com

浏览器访问:

http://example.com

七、常见问题

  • 403 Forbidden:目录权限或 Require all granted 未配置
  • 无效域名:检查 ServerName 和 hosts
  • 端口冲突:确认 80 端口未被占用

如果你需要:

  • ✅ 基于端口的虚拟主机
  • ✅ HTTPS(SSL)虚拟主机
  • ✅ Laravel / PHP 项目配置

可以告诉我,我可以进一步说明。

0 踩