宝塔面板支持三种批量修改网站PHP版本的方法:一、在网站列表页勾选目标站点后点击“设置PHP版本”选择新版本;二、通过SSH执行bt命令循环调用bt 6 [域名] [版本号];三、直接用sed修改Nginx/Apache配置文件中的fastcgi_pass路径并重载服务。

如果您在宝塔面板中管理数十个网站,且需统一将它们的PHP运行版本更改为另一版本,则手动逐个修改效率极低。以下是实现批量修改网站PHP执行版本的可行操作路径:
一、通过宝塔面板“网站”列表页批量选择修改
宝塔面板(v7.9.0 及以上版本)支持在网站列表页对多个已选网站统一设置PHP版本,前提是这些网站当前均使用可被批量操作的相同运行环境类型(即均为PHP站点,且未启用反向代理或静态类型)。
1、登录宝塔面板后台,点击左侧菜单栏的网站进入网站管理列表。
2、勾选目标网站前的复选框,可按住Ctrl(Windows/Linux)或Command(macOS)多选,也可点击顶部全选后取消勾选非目标站点。
立即学习“PHP免费学习笔记(深入)”;
3、在列表顶部工具栏中,找到并点击设置PHP版本按钮(图标为“{ }”或文字标签,位置在“批量删除”“批量停止”右侧)。
4、在弹出的下拉菜单中,选择目标PHP版本(如PHP-8.1),点击确定。
5、等待页面右上角提示批量设置成功,刷新列表确认各网站“PHP版本”列已更新。
二、通过SSH执行宝塔命令行工具批量修改
当网站数量极大(如超百个)、部分网站处于停用状态,或面板图形界面批量功能不可用时,可调用宝塔内置命令行工具bt完成精准批量操作,该方式绕过前端限制,直接写入配置文件并重载服务。
1、使用SSH工具(如PuTTY、FinalShell)以root用户登录服务器。
2、执行命令查看所有网站及其当前PHP版本:
bt 10(进入网站管理),然后选择选项7(查看网站列表),记录需修改的网站名称(如site1.com、blog.example.org)。
3、构造批量修改命令:运行以下语句,将site1.com site2.com site3.com替换为实际域名(空格分隔,不加引号),81替换为目标PHP主版本号(如74→PHP-7.4,80→PHP-8.0,81→PHP-8.1):
for site in site1.com site2.com site3.com; do bt 6 $site 81; done
4、每执行一个bt 6 [domain] [php_version],系统将自动修改对应网站的PHP版本并重载Nginx/Apache配置。
5、执行完毕后,运行bt 10 → 选项7再次核对各站点PHP版本字段是否已变更。
三、通过直接修改站点配置文件并重载Web服务
该方法适用于需严格控制配置细节、或面板工具异常失效的场景。其原理是定位每个网站对应的Nginx或Apache虚拟主机配置文件,批量替换其中PHP处理模块的fastcgi_pass或proxy_pass指向,并重启服务生效。
1、确认Web服务器类型:执行bt 10 → 选项1查看当前使用的Web服务(Nginx或Apache)。
2、若为Nginx,进入配置目录:cd /www/server/panel/vhost/nginx;若为Apache,进入:cd /www/server/panel/vhost/apache。
3、列出所有网站配置文件:ls -1 *.conf,筛选出需修改的目标文件名(通常与域名一致,如example.com.conf)。
4、使用sed命令批量替换PHP版本路径(以Nginx + PHP-8.1为例):
sed -i '/fastcgi_pass/s/php.*\.sock/php-81.sock/g' example.com.conf blog.example.org.conf
5、重载Web服务:Nginx执行bt 1 → 选项1;Apache执行bt 1 → 选项2。











