登录
首页 >  文章 >  php教程

宝塔批量建站教程详解

时间:2026-06-01 09:37:31 165浏览 收藏

宝塔面板虽无官方批量建站功能,但通过内置的`bt`命令行工具配合简洁的Shell脚本,即可高效、可靠地实现数十个网站的自动化创建——无需依赖风险高、兼容性差的第三方插件,只需准备域名列表、确认基础环境,5分钟内即可完成批量部署;不过,脚本执行后务必手动验证Nginx配置、SSL证书状态及首页文件,避免因并发创建跳过校验而埋下运行隐患,真正省时省力的关键,在于掌握原生命令的精准用法与必要的善后检查。

怎么在宝塔面板一键批量自动化快速添加几十个格式相似的独立网站

宝塔面板不支持真正意义上的“一键批量添加网站”

宝塔面板官方没有提供类似 batch_add_site 或导入 CSV 批量建站的功能。所谓“一键批量”,实际是绕过 Web 界面,用命令行 + 脚本模拟人工操作流程,本质是自动化调用宝塔的底层 API 和文件操作。直接点开面板点“添加站点”建几十个,不仅慢,还极易因重复配置、端口冲突、域名校验失败而中断。

bt 命令行工具 + shell 脚本最可靠

宝塔自带的 bt 命令(位于 /www/server/panel/pyenv/bin/bt 或已加入 PATH)可直接创建站点,无需登录 Web 界面。配合简单 for 循环,5 分钟就能跑完 50 个站点。

实操建议:

  • 准备一个纯文本文件 sites.txt,每行一个域名:
    site1.example.com
    site2.example.com
    api.v2.test
    docs.beta.local
  • 执行脚本前先确认:PHP 版本已安装(如 74)、网站根目录父路径存在(如 /www/wwwroot/)、所有域名 DNS 已解析或仅用于本地测试
  • 运行以下命令(替换 74 为你实际的 PHP 版本 ID):
    while read domain; do
      bt add_site $domain 74
    done < sites.txt
  • bt add_site 默认启用 FTP、创建数据库、开启 SSL(若域名可验证),如需禁用某项,得改用更底层的 python /www/server/panel/class/web_api.py add_site 调用,但没必要——多数场景默认行为已够用

批量添加后必须手动检查的三处

脚本跑完不等于万事大吉。宝塔在高并发创建时会跳过部分校验,容易埋坑:

  • nginx 配置是否全部生效?执行 nginx -t,若报错常见于重复的 server_name 或非法字符(如下划线 _ 出现在域名中)
  • SSL 是否全部成功?bt 76 查看证书列表,失败的会显示 “未获取到证书”,需单独重试 bt 77(强制续签)
  • 每个站点的 index.html 是否被覆盖?bt add_site 默认会写入欢迎页,如果你已有统一模板,得用 rsynccp 批量覆盖 /www/wwwroot// 目录

别碰“宝塔插件市场”的批量建站工具

第三方插件如“批量建站助手”大多只是封装了上面的 shell 脚本,还额外加了 Web 表单和进度条,看似方便,实则引入新风险:

  • 插件权限过高,可能读取你所有站点配置甚至数据库密码
  • 更新不及时,遇到新版宝塔(如 v8.0+)API 变动就直接报错 AttributeError: 'NoneType' object has no attribute 'get'
  • 出错时日志藏在插件私有路径里,排查比原生命令难得多

真正省时间的方式,是把那 10 行 shell 保存成 add-batch.sh,加个 chmod +x,下次直接 ./add-batch.sh —— 复杂点在于域名列表格式和路径权限,而不是工具本身。

今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>