Linux绑定泛域名是指在Linux服务器上配置DNS解析,使得一个域名(例如 *.example.com
)可以指向同一个IP地址。这种配置允许所有以 example.com
结尾的子域名都解析到同一个服务器。
blog.example.com
和 shop.example.com
。假设你有一个域名 example.com
,你希望所有以 *.example.com
结尾的子域名都指向IP地址 192.168.1.1
。
named.conf
或 named.conf.local
)。zone "example.com" IN {
type master;
file "/etc/bind/db.example.com";
};
/etc/bind/db.example.com
。$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
2023010101 ; Serial
3600 ; Refresh
1800 ; Retry
604800 ; Expire
86400 ; TTL
)
IN NS ns1.example.com.
IN NS ns2.example.com.
* IN A 192.168.1.1
sudo systemctl restart bind9
假设你已经配置了DNS泛解析,接下来在Nginx上配置反向代理。
/etc/nginx/nginx.conf
或 /etc/nginx/sites-available/default
)。server {
listen 80;
server_name ~^(?<subdomain>\w+)\.example\.com$;
location / {
proxy_pass http://localhost:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
sudo systemctl restart nginx
dig
或 nslookup
工具测试DNS解析。dig @8.8.8.8 blog.example.com
http://localhost:8000
)。sudo tail -f /var/log/nginx/error.log
通过以上配置和调试步骤,你应该能够成功在Linux服务器上绑定泛域名。
领取专属 10元无门槛券
手把手带您无忧上云