在 CentOS 上配置子域名,通常分为 DNS 解析配置 和 Web 服务(如 Nginx / Apache)配置 两部分。下面以常见场景为例说明。
假设:
example.comblog.example.com1.2.3.4在你的域名解析控制台添加一条记录:
| 类型 | 主机记录 | 记录值 |
|---|---|---|
| A | blog | 1.2.3.4 |
如果是 IPv6,用 AAAA 记录。
✅ 等待 DNS 生效(通常几分钟到几十分钟)
yum install nginx -y
systemctl enable nginx
systemctl start nginx
mkdir -p /var/www/blog
echo "blog.example.com" > /var/www/blog/index.html
vi /etc/nginx/conf.d/blog.conf
内容示例:
server {
listen 80;
server_name blog.example.com;
root /var/www/blog;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
nginx -t
systemctl restart nginx
yum install httpd -y
systemctl enable httpd
systemctl start httpd
mkdir -p /var/www/blog
echo "blog.example.com" > /var/www/blog/index.html
vi /etc/httpd/conf.d/blog.conf
内容:
<VirtualHost *:80>
ServerName blog.example.com
DocumentRoot /var/www/blog
<Directory /var/www/blog>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
systemctl restart httpd
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
如果是 HTTPS:
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
使用 Let’s Encrypt:
yum install certbot python2-certbot-nginx -y
certbot --nginx -d blog.example.com
curl http://blog.example.com
或本地 hosts 测试:
vi /etc/hosts
1.2.3.4 blog.example.com
如果你能告诉我:
我可以给你更精确的配置示例。