SuperAPI AI 工具集

btpanel_phpsite

部署与运维

查看项目

更新于 10-15 10:25

技能介绍

用途

宝塔面板 PHP 网站管理技能,用于通过命令行脚本对服务器上的 PHP 网站进行全生命周期管理。它复用 btpanel 技能的服务器配置系统,可远程操作宝塔面板中的站点、PHP 版本、域名、SSL 证书、伪静态规则和数据库。

主要能力

  • 站点管理:查看列表、创建、停用、启用、删除、查看详情。
  • PHP 版本管理:查看已安装版本、查看站点版本、切换版本或设为纯静态。
  • 域名管理:查看、添加、删除绑定域名,支持多个域名逗号分隔。
  • SSL 证书管理:查看信息、上传证书、申请免费证书、开启/关闭强制 HTTPS、关闭 SSL。
  • 伪静态管理:查看模板列表、查看当前规则、应用模板或自定义规则。
  • 数据库管理:查看列表与详情、创建、修改密码、设置访问权限、查看表信息、优化、修复、删除。

使用方式

需先配置服务器信息,使用 bt-config.py 添加服务器(面板地址与 API Token)。获取 Token 的方法:登录宝塔面板,进入「面板设置」->「API 接口」,点击「获取 API Token」。添加服务器时需确认面板是否使用受信任 SSL 证书,自签名证书需加 --verify-ssl false 参数。

运行脚本前需设置 PYTHONPATH,例如: export PYTHONPATH=/path/to/btpanel-skills/src:$PYTHONPATH

常用命令示例:

  • 创建站点:python3 {baseDir}/scripts/site.py add -n example.com -p /www/wwwroot/example.com -v 82
  • 查看站点列表:python3 {baseDir}/scripts/site.py list
  • 切换 PHP 版本:python3 {baseDir}/scripts/php.py set -n example.com -v 82
  • 添加域名:python3 {baseDir}/scripts/domain.py add -n example.com -d www.example.com
  • 申请免费证书:python3 {baseDir}/scripts/ssl_cert.py apply -n example.com -d example.com,www.example.com
  • 应用伪静态:python3 {baseDir}/scripts/rewrite.py set -n example.com -t wordpress
  • 创建数据库:python3 {baseDir}/scripts/database.py add -n example_db -u example_user -P "SecurePass123"

适用场景

适用于在宝塔面板环境中远程或批量管理 PHP 网站,包括新建站点、调整 PHP 版本、绑定域名、配置 SSL、设置伪静态以及管理数据库。资料中提供了完整的 WordPress 部署实战示例,涵盖环境检查、创建站点与数据库、下载源码、解压、复制文件、配置 wp-config.php、应用伪静态规则和验证访问等步骤。

限制与注意事项

  • 版本要求:宝塔面板 >= 9.0.0,Python >= 3.10。
  • 删除操作不可逆,操作前必须向用户确认并提醒备份数据和数据库。
  • 修改 PHP 版本、SSL 证书等操作前应告知用户可能的影响。
  • 申请免费 SSL 证书需使用域名(不支持 IP 或内网 IP),域名需解析到服务器,HTTP 验证需开放 80 端口;DNS 验证需配置域名服务商 API 凭证。Let's Encrypt 证书有效期 90 天,有申请频率限制。
  • 数据库访问权限中 % 表示允许远程连接,127.0.0.1 表示仅本地访问。
  • 应用伪静态规则前建议先查看当前规则并备份。
  • 常见问题:配置文件不存在需运行 python3 bt-config.py add 添加服务器配置;WordPress 部署失败需确保 btpanel-files 技能已安装;PYTHONPATH 未设置需按上述方式设置。
  • 支持的 PHP 版本包括 52 至 84 以及纯静态(00),其中 5.2-5.5 已淘汰。
  • 支持的伪静态模板包括 wordpress、thinkphp、laravel5、dedecms、discuz、ecshop、typecho、zblog、drupal、phpcms、maccms、crmeb、ShopWind、EmpireCMS、EduSoho 等。
  • 技能包提供 icon/bt-logo.svg 图标文件,可在生成报告时引用。
  • 宝塔面板相关技能矩阵包含 btpanel(运维监控)、btpanel-files(文件管理)、btpanel-phpsite(PHP 网站管理)三个相互关联的技能。