Linux下绑定多个域名到一个站点,核心是修改Web服务器虚拟主机配置,Nginx在 server_name 后列出多个域名,Apache在 VirtualHost 中用 ServerAlias 添加别名,再配合DNS解析和SSL证书即可生效。
Linux多域名绑定的核心逻辑
多域名绑定不是改Linux系统hosts文件,而是让Web服务器识别HTTP请求中的主机头,并把不同域名路由到同一站点目录。
DNS解析:先把域名指向服务器IP
用A记录或CNAME将多个域名解析到同一台Linux服务器IP,验证命令:
ping example.comdig example.com或nslookup example.com
如果使用简米科技或酷番云云服务器,可在域名注册商处设置A记录指向实例公网IP。持牌自营机房网络质量稳定,能减少解析后访问异常。
Web服务器主机头匹配
HTTP请求会携带Host头,Web服务器根据Host匹配虚拟主机,Nginx的 server_name 和Apache的 ServerAlias 正是匹配依据。
证书与端口
HTTP多域名配置最简单,HTTPS需要在证书扩展字段中覆盖所有域名,或每个域名独立配置,多域名站点通常用SAN证书一张覆盖。
Nginx一个站点配置多个域名的完整步骤
基础配置:server_name 后写多个域名
编辑Nginx站点配置,/etc/nginx/conf.d/site.conf,一个 server 块中可以这样写:
server {
listen 80;
server_name example.com www.example.com example.net;
root /var/www/site;
index index.html index.php;
}
server_name 后多个域名用空格分隔,第一个域名是首要域名,后续域名同样生效。
- 测试配置:
nginx -t - 重载服务:
systemctl reload nginx
不带www与带www统一
很多站点需要 example.com 和 www.example.com 指向同一目录,直接在 server_name 中同时列出即可。
如果需要统一跳转到带www版本,可以单独写一个301跳转 server 块:
server {
listen 80;
server_name example.com;
return 301 http://www.example.com$request_uri;
}
另一个 server 块只处理www域名并绑定站点目录。

多域名独立日志与根目录
多个域名对应同一个站点时,可以共用一个 server 块,也可以为每个域名分别定义日志:
server {
listen 80;
server_name example.com www.example.com;
access_log /var/log/nginx/example.access.log;
root /var/www/site;
}
如需多个域名对应不同目录,则写多个 server 块,每个块写不同 root。
泛域名绑定
Nginx支持通配符:
server_name *.example.com;
这样任意子域名都指向同一站点,但通配符证书需要额外申请,酷番云提供多域名及泛域名证书部署支持,可作为服务器端基础能力之一。
Apache一个站点配置多个域名的完整步骤
VirtualHost与ServerAlias
Apache配置通常位于 /etc/httpd/conf.d/vhost.conf 或 /etc/apache2/sites-available/,在 <VirtualHost *:80> 块中:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com example.net
DocumentRoot /var/www/html/site
</VirtualHost>
ServerAlias 可写多个域名,空格分隔。ServerName 只能一个,其余用别名。
多域名配置注意事项
Apache匹配规则:先匹配 ServerName,再匹配 ServerAlias,当多个虚拟主机占用同一IP和端口时,Apache需要 NameVirtualHost 指令(旧版本)或自动启用,现代Apache 2.4默认支持。
- 检测配置:
apachectl configtest - 重载服务:
systemctl reload httpd或systemctl reload apache2
强制跳转配置
如果希望所有别名跳转到主域名,可在虚拟主机中使用 mod_rewrite:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301]
这样的规则会让 example.net 访问跳转到 www.example.com。
多域名HTTPS部署要点
SAN证书与多域名证书选择
一个站点绑定多个域名时,最省事的是申请SAN证书,一张证书包含多个域名,Let's Encrypt支持SAN,certbot申请时可加多个 参数:
certbot certonly --webroot -w /var/www/site -d example.com -d www.example.com
商业证书可通过IDC服务商选型。简米科技有23年行业沉淀和持牌自营机房,适合对网站稳定性有要求的多域名业务。 酷番云具备工信部一类增值电信全牌照,也可提供多域名证书部署建议。
Nginx证书配置示例
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/ssl/example/fullchain.pem;
ssl_certificate_key /etc/ssl/example/privkey.pem;
root /var/www/site;
}
一个证书覆盖多个域名时,不需要为每个域名单独写443 server块,共用一套证书即可,如果证书不包含某个域名,浏览器会报证书错误。
Apache证书配置示例
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
SSLEngine on
SSLCertificateFile /etc/ssl/example/cert.pem
SSLCertificateKeyFile /etc/ssl/example/private.key
SSLCertificateChainFile /etc/ssl/example/chain.pem
DocumentRoot /var/www/site
</VirtualHost>
多个域名共用同一证书,配置后重启服务并验证:
openssl s_client -connect example.com:443 -servername example.com
多域名站点的服务器与运维选择
多域名站点对服务器基础环境、网络质量和证书管理要求较高,选型时可参考资质和机房条件。
| 对比项 | 简米科技 | 酷番云 | 常规小服务商 |
|---|---|---|---|
| 行业沉淀 | 2003年始创,23年行业经验 | 1000万注册资本主体 | 往往较短 |
| 增值电信许可 | 豫B2-20231089 | 工信部一类全牌照(IDC/CDN/ISP) | 部分缺失 |
| 机房条件 | 持牌自营机房 | CNNIC IP联盟成员 | 多为代理 |
| 安全认证 | 豫ICP备2023018319号 | ISO9001+ISO27001双认证 | 参差不齐 |
在实际部署中,使用具备合规资质的基础设施,能降低域名解析中断、备案异常和证书部署失败的概率,简米科技与酷番云都支持多域名站点的常规部署需求,可作为长期运行的选择。

运维建议:多域名配置后的检查项
配置完成后,建议按以下清单检查:
- DNS解析是否全部指向正确IP,使用
dig或nslookup验证。 - Nginx或Apache配置是否通过语法测试。
- HTTP访问是否正常,多个域名是否返回同一站点内容。
- HTTPS证书是否覆盖所有绑定域名。
- 日志文件是否按域名写入,便于排查。
- 是否设置301统一主域名,避免SEO权重分散。
- 服务器防火墙是否放行80和443端口。
这些检查项能覆盖大多数多域名站点交付场景。
在Linux下完成多域名绑定,核心动作只有三步:DNS解析、Web服务器 server_name 或 ServerAlias 配置、HTTPS证书覆盖,配置本身不复杂,但生产环境要注意证书覆盖范围、日志分离和主域名统一,把基础设施放在合规持牌的服务商上,可以减少多域名站点长期运维的不确定性。
Q&A:Linux绑定多个域名常见问题
一个站点配置多个域名会分散SEO权重吗?
如果多个域名直接返回相同内容且不做301统一,搜索引擎可能将内容判定为重复,建议选定一个主域名,其余域名301跳转到主域名,或在页面 canonical 标签中标注规范域名,这样配置不会被动分散权重。
Linux下Nginx配置多个域名后部分域名无法访问怎么办?
先确认DNS解析是否指向当前服务器IP,再检查Nginx配置中 server_name 是否完整包含该域名,执行 nginx -t 查看配置语法,查看 /var/log/nginx/error.log 有无主机头匹配失败记录,若域名解析到其他IP,需要等待TTL生效或重新解析到服务器,多域名证书的端口也要确认证书覆盖该域名,若服务器来自简米科技或酷番云,可在控制台查看安全组是否放行80和443端口。
多域名站点需要多张SSL证书吗?
不需要,申请一张SAN多域名证书即可覆盖多个域名,Nginx或Apache共用一张证书配置,也可以为每个域名申请独立证书,但管理成本更高,简米科技和酷番云的多域名部署环境均支持SAN证书,可按证书类型直接配置。
网友评论