是的,Ubuntu域名支持子域名。在Ubuntu系统上配置子域名的步骤如下:
如果你还没有安装DNS服务器,可以使用 bind9。以下是安装和基本配置的步骤:
安装Bind9:
sudo apt update sudo apt install bind9 bind9utils bind9-doc 配置Bind9: 编辑主配置文件 /etc/bind/named.conf.local,添加你的域名和子域名的区域配置:
sudo nano /etc/bind/named.conf.local 添加以下内容(假设你的主域名是 example.com,子域名是 sub.example.com):
zone "example.com" { type master; file "/etc/bind/zones/db.example.com"; # 主域名区域文件 }; zone "sub.example.com" { type master; file "/etc/bind/zones/db.sub.example.com"; # 子域名区域文件 }; 创建区域文件: 创建主域名和子域名的区域文件:
sudo mkdir /etc/bind/zones sudo cp /etc/bind/db.local /etc/bind/zones/db.example.com sudo cp /etc/bind/db.local /etc/bind/zones/db.sub.example.com 编辑主域名区域文件 /etc/bind/zones/db.example.com:
sudo nano /etc/bind/zones/db.example.com 修改以下内容:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 3 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. @ IN A 192.168.1.100 ns1 IN A 192.168.1.100 编辑子域名区域文件 /etc/bind/zones/db.sub.example.com:
sudo nano /etc/bind/zones/db.sub.example.com 添加以下内容:
$TTL 604800 @ IN SOA ns1.sub.example.com. admin.sub.example.com. ( ; ; ; ; ; ) @ IN NS ns1.sub.example.com. @ IN A 192.168.1.101 重启Bind9服务:
sudo systemctl restart bind9 假设你使用的是Apache服务器,以下是配置子域名的步骤:
安装Apache:
sudo apt install apache2 配置虚拟主机: 创建一个新的虚拟主机配置文件:
sudo nano /etc/apache2/sites-available/sub.example.com.conf 添加以下内容:
<VirtualHost *:80> ServerAdmin webmaster@sub.example.com ServerName sub.example.com ServerAlias www.sub.example.com DocumentRoot /var/www/sub.example.com Options Indexes FollowSymLinks AllowOverride All Require all granted ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> 启用虚拟主机:
sudo a2ensite sub.example.com.conf 重启Apache服务:
sudo systemctl restart apache2 http://sub.example.com,确认子域名是否正确解析并显示内容。