宝塔面板域名配置需分场景处理:主域名外的别名须每行一个添加;HTTPS多域名需共用SAN证书;跳转须用301重定向而非别名;泛域名需手动修改Nginx配置并重载。

别在「域名」输入框里填多个域名
宝塔面板的「域名」字段只认第一个域名,其余全被忽略。你填 example.com,www.example.com,admin.example.net 或用空格隔开,Nginx 配置里依然只有 server_name example.com;,访问其他域名会 404 或跳到默认站。
真正生效的方式是进站点「设置」→「域名管理」→ 在「添加域名别名」框里**每行一个**,例如:
www.example.comdemo.example.netblog.example.com
不加 http://,不加通配符(*.example.com 无效),也不支持正则。填完点提交,宝塔自动重载 Nginx,不用手敲 nginx -s reload。
HTTPS 多域名必须共用 SAN 证书,别指望自动续签
Let’s Encrypt 默认只为「主域名」签发证书。你加了 example.com 和 blog.example.com,但只点了「申请证书」一次,那 blog.example.com 的 HTTPS 访问就会报 NET::ERR_CERT_COMMON_NAME_INVALID。
解决办法只有两个:
- 进站点「SSL」选项卡 → 点「申请」→ 勾选所有已添加的域名(包括别名),生成一张含多个 SAN 条目的证书
- 如果已有独立证书,得手动把
blog.example.com.crt和blog.example.com.key放到/www/server/panel/vhost/cert/blog.example.com/目录下,再编辑配置文件,在对应server块里改ssl_certificate和ssl_certificate_key路径
注意:证书路径里的目录名必须和你在「域名管理」里写的域名**完全一致**,大小写、点号都不能错。
要统一跳转,别用别名,用 301 重定向规则
别名只是让多个域名共用一套文件,用户地址栏还是显示原始域名。如果你要所有流量都归到 https://www.example.com,必须加重定向,而且不能混用别名和重定向逻辑。
操作路径:站点设置 →「重定向」→「添加重定向」→ 类型选 301:
- 「源域名」填要跳走的,比如
example.com - 「目标 URL」必须写完整协议+域名+路径变量:
https://www.example.com$request_uri - 漏掉
$request_uri,/admin/login?next=/dashboard就会变成首页 - 多个跳转需求,比如还要把
blog.example.com也跳过去,就得再建一条规则,不能合并在一行
重定向优先级高于别名,一旦匹配就直接返回 301,不再查 server_name。
泛域名(*.example.com)必须手动改 Nginx 配置
宝塔界面不提供泛域名输入框。想让所有一级子域(如 a.example.com、b.example.com)都指向这个站,得自己编辑配置文件:
- 进站点「配置文件」选项卡
- 找到
server_name行,改成类似:server_name www.example.com example.com *.example.com; - 保存后务必点「重载 Nginx」,只点「保存」不生效
注意:*.example.com 只匹配一级子域,a.b.example.com 不在范围内;如果同时要支持 example.com、www.example.com 和泛解析,建议拆成两个站点,避免 server_name 冲突或防跨站误判。











