在 Debian 上搭建“域名服务”通常有两种常见理解:
下面我分别说明,最常用的是第 1 种(DNS 服务)。
sudo apt update
sudo apt install bind9 bind9-utils
编辑主配置文件:
sudo nano /etc/bind/named.conf.local
示例(假设域名 example.local):
zone "example.local" {
type master;
file "/etc/bind/db.example.local";
};
sudo cp /etc/bind/db.local /etc/bind/db.example.local
sudo nano /etc/bind/db.example.local
示例内容:
$TTL 604800
@ IN SOA ns.example.local. admin.example.local. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
@ IN NS ns.example.local.
ns IN A 192.168.1.10
www IN A 192.168.1.20
sudo named-checkconf
sudo named-checkzone example.local /etc/bind/db.example.local
sudo systemctl restart bind9
sudo systemctl enable bind9
在客户端 /etc/resolv.conf:
nameserver 192.168.1.10
sudo apt install nginx
sudo nano /etc/nginx/sites-available/example.com
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.html;
}
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
域名需解析到服务器 IP(可在 DNS 或 hosts 文件中配置)
如果不是真正做 DNS 服务,可临时用:
sudo nano /etc/hosts
192.168.1.10 example.local
bind9Nginx/Apache + 域名解析/etc/hosts如果你能说明是 公网域名 / 局域网 DNS / 网站服务,我可以给你更精确的配置示例。