用户登录
个人主页 用户中心 我的订单 添加授权 管理授权
退出登录
用户登录 用户注册
欢迎来到 UC建站系统

宝塔面板100个域名一个个添加要3小时,四种方法10分钟搞定,最快的一行命令就够

假设你刚买了50个老域名,打算在宝塔面板上做一批站。打开面板,点"添加站点"——填域名、选目录、开FTP、建数据库、选PHP版本——提交,一个站搞完。50个站,按最快手速算,一个站30秒,50个就是25分钟。中间还要复制粘贴域名、确认目录没冲突、核对数据库名——实际下来,一个小时起步。要是100个、200个域名,光添加站点就能耗掉一个下午。

先说结论:宝塔面板批量添加站点有四种方法,从简单到硬核:①面板内置批量添加(适合10-50个域名)→ ②bt命令行脚本(适合50-200个域名)→ ③API接口调用(适合200+域名,可写进自动化流程)→ ④多域名绑定同一站点(纯站群场景)。前三种是真正的"每个域名一个独立站点",第四种是多域名指向同一站。用哪个看你域名数量和动手能力。

一、四种方法一张表看清楚

方法上手难度适合域名数需写代码独立站点
面板内置批量添加10-50个不需要
bt命令行脚本50-200个三行Shell
API接口脚本200+需要
多域名绑定同一站不限不需要❌ 同站多域名

二、面板内置批量添加,零代码最快上手

这是绝大多数人用得上的方式。宝塔面板从7.5.27版本开始,在"添加站点"按钮旁边加了一个「批量添加站点」入口。

操作步骤

  1. 登录宝塔面板,点击左侧「网站」菜单
  2. 找到「添加站点」按钮右侧的下拉箭头,选择「批量添加站点
  3. 在弹窗的域名输入框中,每行写一个域名(如 site1.com、site2.net)
  4. 统一设置公共参数:是否创建FTP、是否创建MySQL数据库、PHP版本、站点根目录
  5. 点击「提交」,等几秒全部建完

高级格式:逐站点定制参数

如果每个站点的配置不一样——有的要FTP有的不要,有的用PHP7.4有的用PHP8.0——可以用竖线分隔的逐站点格式:

域名|根目录|FTP|数据库|PHP版本
参数说明取值
域名主域名,多个用英文逗号分隔abc.com,www.abc.com
根目录网站根目录路径1 = 自动创建;或填具体路径
FTP是否创建FTP账号1 = 创建;0 = 不创建
数据库是否创建MySQL数据库1 = 创建;0 = 不创建
PHP版本指定PHP版本0 = 静态;56/74/80

举个实际例子,同时建三个不同类型的站:

shop.mydomain.com,www.shop.mydomain.com|/www/wwwroot/shop|1|1|74
blog.mydomain.com|/www/wwwroot/blog|0|1|80
landing.mydomain.com|/www/wwwroot/landing|0|0|0

第一条建了带FTP和数据库的PHP7.4商城站,第二条建了只有数据库的PHP8.0博客站,第三条建了纯静态落地页。三条记录一次性提交,三秒建完。

三、bt命令行脚本,50个域名一行循环搞定

域名数量超过50个,或经常有批量建站需求,写个Shell脚本比每次点面板高效得多。宝塔自带的 bt 命令行工具支持直接添加站点。

1 - 宝塔面板100个域名一个个添加要3小时,四种方法10分钟搞定,最快的一行命令就够 - UC建站系统

把域名写到一个文本文件里,每行一个:

# sites.txt
site1.com
site2.com
site3.com
...
site100.com

一行循环脚本全部搞定:

while read domain; do
  bt add_site $domain 74
done < sites.txt

bt add_site 的默认行为:自动创建FTP、自动建MySQL数据库、自动尝试申请SSL证书——建完就能用。PHP版本ID填你实际安装的版本号,74是PHP7.4,80是PHP8.0。

注意:bt命令行默认根目录是 /www/wwwroot/域名/,数据库名也按域名自动生成。如果两个域名前缀太接近(比如 site-1.com 和 site-1.net),数据库名可能会冲突。建站前先检查域名列表。

四、API接口调用,200+域名的自动化方案

建站量级到200+,或者想把批量建站嵌入自动化流程(域名购买后自动建站),就需要API了。

开通步骤:宝塔面板 →「设置」→「面板API」→ 开启开关 → 获取API密钥和面板地址。

Shell版API批量建站脚本:

#!/bin/bash
API_URL="http://你的面板IP:8888"
API_KEY="你的API密钥"
SITE_DIR="/www/wwwroot"

while IFS= read -r domain; do
  [ -z "$domain" ] && continue
  echo "创建:$domain"
  curl -s -X POST "$API_URL/api?key=$API_KEY" \
    -d '{
      "action": "AddSite",
      "domain": "'"$domain"'",
      "path": "'"$SITE_DIR/$domain"'",
      "version": "74",
      "sql": true
    }'
  echo ""
done < domains.txt

API方式比bt命令好两点:可精确控制每个参数(数据库名、密码、FTP、伪静态规则等),能拿到返回结果,知道哪个域名创建成功、哪个失败、为什么失败。大规模操作中,后者尤其重要。

关于API的鉴权方式:开启面板API后你会拿到一个密钥,所有请求都通过在URL上携带 ?key=你的密钥 来鉴权。安全起见,建议在宝塔面板的安全设置里把API接口的IP白名单打开,只允许你自己的服务器IP调用,避免密钥泄露后被别人操作你的面板。

另外,如果你用的是Python而不是Shell,用 requests.post() 替代curl会更方便处理返回的JSON。核心参数结构不变,把action、domain、path、version、sql这几个字段构造成dict传过去就行。宝塔官方文档提供了Python Demo可以直接下载参考。

五、建完后的三项必查

脚本跑完不等于大功告成。批量建站时宝塔在高并发下可能跳过校验,下面三项手动检查一下。

第一项:Nginx配置是否生效

SSH执行 nginx -t,返回 syntax is ok 说明所有站点配置正常。报错通常是server_name重复或域名里有下划线。

2 - 宝塔面板100个域名一个个添加要3小时,四种方法10分钟搞定,最快的一行命令就够 - UC建站系统

第二项:SSL证书是否申请成功

SSH执行 bt 76 查看所有证书状态。"未获取到证书"的用 bt 77 强制续签。证书失败通常是DNS未解析或80/443端口未放行。

第三项:默认首页是否覆盖了你的模板

批量建站后每个站点根目录会生成默认index.html。有统一模板的话用一行rsync批量覆盖:

while read domain; do cp /www/template/index.html /www/wwwroot/$domain/; done < sites.txt

六、选哪种方法?看场景

你的情况推荐方法理由
10-30个域名,偶尔建一次面板内置批量添加零学习成本,点几下就行
50-200个域名,经常操作bt命令行脚本三行代码,可复用
200+,需嵌入自动化API接口脚本可控性最强,有返回结果
纯站群,多域名同内容先建一站,再批量绑定域名建主站后在域名管理里绑定其他域名

七、四个容易翻车的地方

1. 一次别建太多,分批来

一次超过50个站点,面板可能超时或消耗过多资源。建议每批20-30个,建完一批等几秒再下一批。

2. 数据库名冲突

宝塔自动生成数据库名时把点号替换成下划线。如果两个域名只有后缀不同(如 abc.com 和 abc.cn),生成的数据库名可能完全一样。用API方式可自定义每个数据库名避免此问题。

3. 伪静态规则别统一设

WordPress、ThinkPHP、Laravel的伪静态规则完全不同。批量建站时统一选一种,后面会发现有些站404。建完站后根据程序类型逐个调整。

4. DNS未生效就申请SSL

Let's Encrypt验证需要域名已解析到服务器IP。刚改完DNS就批量申请SSL,大概率批量失败。先用 ping 域名 确认解析生效再申请。

八、批量建站之后的批量管理

站点建完只是第一步。宝塔网站列表页支持多选,后续管理同样可以批量操作:

  • 批量申请SSL证书:勾选多个站点 → 顶部「SSL」→ Let's Encrypt → 自动验证 → 一键批量申请
  • 批量修改PHP版本:勾选多个站点 → 「批量修改」→ 选择目标PHP版本,全部同步切换
  • 批量备份:「计划任务」→ 添加「备份数据库」+「备份网站」任务,勾选所有站点,设好周期自动执行
  • 批量删除:勾选 → 「批量操作」→ 删除。删前确认是否同时删除FTP和数据库

还有一个小技巧很多人不知道:宝塔面板的"网站"列表页支持按域名、目录、PHP版本三个维度搜索和筛选。比如你建完200个站之后想找到所有用PHP7.4的站点,直接在搜索框里选PHP版本筛就行,不用一个个翻。如果想批量切换这些站点的PHP版本,筛选出来后全选、批量修改,两步完成。

说到批量建站之后的管理,还有一个场景容易被忽略:多个站点共享同一套程序文件。比如你用WordPress做了10个外贸站,每个站都装了一次WordPress,意味着你要维护10份同样的代码。如果WordPress出了安全更新,你得登录10次面板分别升级。更好的做法是用软链接(symlink)把核心文件共享,只让每个站点保留自己独立的 wp-config.php 和 uploads 目录。具体实现:先把WordPress核心文件放到 /www/common/wp-core/,每个站点的根目录下用 ln -s 把 wp-admin、wp-includes 等目录链接过去。这样升级一次核心文件,10个站全更新——这算是批量建站之后的进阶管理技巧。

如果你的建站规模到了需要批量管理几百个站点的程度,说明建站这件事本身已经不是瓶颈了——真正的瓶颈变成了内容生产、SEO优化、流量获取。这时候一个能批量建站、统一管理、自动SEO优化的系统级方案会比手动运维高效得多。UC建站系统支持批量创建和管理多个站点,自动处理域名绑定、SSL证书、数据库配置,并且内置SEO优化功能,适合需要大规模部署站群的场景。

最后说一句

宝塔批量建站这件事,门槛在"敢不敢用命令行",不在"会不会"。面板内置批量功能对大部分场景够用了;如果你愿意花五分钟学一下 bt add_site 那行命令,建站效率能从"一个下午"变成"去接杯水的功夫"。至于要不要上API,完全看你的域名数量和自动化程度——200个以内,bt命令行足够。

但有一点得说清楚:批量建站只是第一步。站点建完之后,内容怎么填、SSL怎么续、伪静态怎么配、备份怎么做——这些才是真正花时间的活。如果只想着"先把站建起来再说",后面你可能会发现自己在200个站点之间来回切换调配置,那比手动建站还累。

相关推荐
在线客服
👇找客服拿折扣
QQ咨询&售后
在线时间
11:00 ~ 5:30
QQ:3155555535
👇联系QQ
👇联系WX
首页 程序 帮助 登录