温馨提示×

ubuntu apache2怎么建虚拟主机

小樊
38
2026-09-11 02:59:37
栏目: 云计算

在 Ubuntu 上使用 Apache2 建立虚拟主机(Virtual Host),通常步骤如下(以 基于域名的虚拟主机 为例):


一、前提条件

  • 已安装 Ubuntu
  • 已安装 Apache2
sudo apt update
sudo apt install apache2

二、创建网站目录

假设你的网站域名是 example.com

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

内容示例:

<html>
  <head><title>example.com</title></head>
  <body>
    <h1>Welcome to example.com</h1>
  </body>
</html>

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

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>
        Options Indexes FollowSymLinks
        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

八、常见问题

1. 403 Forbidden

  • 检查目录权限
  • 检查 <Directory> 配置

2. 端口未监听

sudo netstat -tlnp | grep apache

3. 使用 HTTPS

可配合:

sudo apt install certbot python3-certbot-apache
sudo certbot --apache

如果你需要 多域名虚拟主机 / 本地开发环境 / HTTPS / 子目录站点 的配置,我可以给你具体示例。

0