温馨提示×

ubuntu apache怎么配域名

小樊
41
2026-10-02 06:04:42
栏目: 云计算

在 Ubuntu 上用 Apache 配置域名,通常分为 DNS 解析 + Apache 虚拟主机(VirtualHost) 两步。下面给你一个从零开始的常见做法(以 example.com 为例)。


一、前提条件

  1. 已安装 Apache
sudo apt update
sudo apt install apache2
  1. 有一个域名(example.com)
  2. 服务器有公网 IP,并且:
    • 域名已解析到该 IP(A 记录)
    • 或本地测试时改 /etc/hosts

二、域名解析(DNS)

在你的域名服务商后台:

  • 添加 A 记录
example.com   →  服务器公网IP
www.example.com → 服务器公网IP

本地测试(可选):

sudo nano /etc/hosts

添加:

127.0.0.1 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
<h1>example.com works!</h1>

四、配置 Apache 虚拟主机

新建配置文件:

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}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

五、启用站点

sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf   # 关闭默认站点(可选)
sudo systemctl reload apache2

六、防火墙(如有)

sudo ufw allow 'Apache Full'

七、测试

浏览器访问:

http://example.com

八、HTTPS(推荐)

使用 Let’s Encrypt:

sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d example.com -d www.example.com

九、常见坑

  • ❌ 只配了 Apache 没配 DNS
  • ❌ ServerName 写错
  • ❌ 没 reload apache
  • ❌ 云服务器安全组没开放 80/443

如果你是想:

  • 配 子域名
  • 配 本地局域网域名
  • 配 多域名同服务器
  • 配 HTTPS + 重定向

可以直接告诉我你的具体场景。

0 踩