必须立即还原PHP配置并删除残留swoole.so文件:先通过宝塔【备份还原】仅还原php.ini,再重启对应php-fpm服务,接着手动删除/www/server/php/版本号/lib/php/extensions/下的swoole.so,最后用php --ri swoole和php -m验证扩展已彻底移除且网站访问正常。

宝塔面板安装Swoole扩展过程中一旦操作失误,可能导致PHP服务崩溃、Web站点500错误或CLI与FPM环境不一致,必须依靠可靠备份快速回退到可运行状态。
确认当前PHP版本与备份完整性
执行php -v命令,核对输出中PHP主版本号(如8.0)与宝塔软件商店中实际启用的PHP版本完全一致。若不一致,后续所有备份恢复将无法匹配运行环境。
进入/www/backup/目录,分别检查site/、database/、panel/三个子目录是否存在最近一次成功安装Swoole前的备份文件;缺失任一类型备份,均视为本次恢复不可靠。
用ls -lh /www/backup/panel/查看面板配置备份时间戳,确保其早于你开始编译Swoole扩展的时间点。
还原PHP配置文件(关键步骤)
第一步:登录宝塔面板→左侧菜单点击【备份还原】→在面板设置备份列表中,找到安装Swoole前最后一次成功的备份记录。
第二步:点击该备份右侧【还原】按钮→勾选“仅还原PHP配置”选项→确认还原范围为/www/server/php/80/etc/php.ini(请将80替换为你实际使用的PHP版本号)。
第三步:点击【开始还原】→等待进度条完成→页面提示“还原成功”后,立即执行/etc/init.d/php-fpm-80 restart重启服务。
Swoole 6.1.1 是一个专为 PHP 设计的高性能事件驱动并发网络引擎。作为稳定版,它修复了编译时对 zlib 依赖的缺失及 curl 模块的内存安全风险。该版本支持协程、多线程与多进程架构,内置 TCP/HTTP/WebSocket 服务器,能够显著提升 PHP 在微服务、实时通信等场景下的执行效率与并发能力。
【注意:必须重启PHP服务,仅重载(reload)不会重新加载php.ini中被注释掉的extension=swoole.so行】
手动清理残留Swoole扩展文件
执行ls -l /www/server/php/80/lib/php/extensions/no-debug-non-zts-20200930/ | grep swoole,确认swoole.so文件存在。
若存在,执行rm -f /www/server/php/80/lib/php/extensions/no-debug-non-zts-20200930/swoole.so彻底删除编译生成的扩展文件。
这一步不能跳过——即使php.ini已移除extension行,PHP FPM进程仍可能因opcache缓存或共享内存残留而尝试加载该so文件,导致启动失败。
验证PHP环境是否回归安全状态
执行php --ri swoole,确认返回Extension 'swoole' not present。
执行php -m | grep swoole,确认无任何输出。
访问任意一个使用该PHP版本的网站,确认HTTP响应状态码为200且页面正常渲染,无500/502错误。

















