Ubuntu 23.04环境下WordPress无法检测更新可用磁盘空间求助
解决WordPress站点健康提示“Could not determine available disk space for updates.”的问题
以下是针对Ubuntu 23.04 + Apache + PHP8.1 + MariaDB环境的排查与解决步骤:
1. 修复WordPress目录权限
Apache进程默认以www-data用户运行,该用户需要具备读取WordPress核心目录的权限。执行以下命令(替换/var/www/your-wordpress-dir为你的实际站点路径):
sudo chown -R www-data:www-data /var/www/your-wordpress-dir sudo chmod -R 755 /var/www/your-wordpress-dir
2. 检查PHP函数禁用列表
WordPress依赖disk_free_space()函数获取磁盘空间,确认该函数未被PHP禁用:
- 执行命令查找禁用配置:
sudo grep -n "disable_functions" /etc/php/8.1/apache2/php.ini - 如果输出中包含
disk_free_space,编辑php.ini文件移除该函数,然后重启Apache:sudo systemctl restart apache2
3. 验证磁盘挂载与路径访问
- 先查看系统磁盘分区状态,确认站点所在分区的挂载点:
df -h - 确保
www-data用户能访问该挂载点(默认Ubuntu环境下无特殊限制,但如果有自定义挂载或权限设置需排查)。
4. 手动测试磁盘空间获取
在WordPress根目录创建临时测试文件test-disk.php,内容如下:
<?php define('ABSPATH', __DIR__ . '/'); $free_space = disk_free_space(ABSPATH); if ($free_space !== false) { echo "可用磁盘空间:" . round($free_space / 1024 / 1024, 2) . " MB"; } else { echo "无法获取磁盘空间"; } ?>
通过浏览器访问该文件:
- 若显示可用空间,说明PHP层面正常,尝试切换到默认主题、禁用所有插件或清除站点缓存后重新检查站点健康;
- 若仍显示无法获取,回到权限和函数禁用步骤进一步排查。
5. 排查数据库所在磁盘空间
虽然提示针对更新磁盘空间,但数据库所在磁盘满也可能引发异常:
df -h | grep mysql
若空间不足,清理数据库日志或扩容对应分区。
内容的提问来源于stack exchange,提问作者Shawn
相关产品推荐
相关产品推荐

