我在 Ubuntu VPS 上安装了 ISPConfig 3,并通过 FastCGI 和 suexec 为 Apache + PHP 配置了它。我可以上传 PHP 应用程序(例如 Wordpress)并使用 suexec 正常运行它们。
但是,出于某种原因,PHP 脚本无法将数据写入磁盘。例如,尝试通过 Wordpress 的 Web 界面升级插件会导致失败,并出现错误“无法创建目录 /path/to/wp-content/upgrade/plugin.tmp。”
尝试通过网络上传媒体和其他资产也失败。
我检查了目录结构的所有者/组,一切正常。suExec 日志似乎也正常,我在 Web 服务器日志中没有看到任何指示性错误。
我还可以确认,更改目录的所有者/组确实会导致 suexec.log 中出现预期的错误。
此外,我将目录权限设置为 u=rw,g=r,o=,并且我也尝试设置 g=rw。
这些都无法让我的脚本写入目录。我做错了什么?
答案1
我解决了这个问题。
事实证明,ISPConfig 根据为每个用户/客户端帐户指定的配置参数设置磁盘配额。我曾手动从另一台服务器迁移内容,该服务器的用户目录中包含几个大文件,因此超出了配额。
我删除了这些文件,将使用的空间恢复到配额以下,一切都开始正常运行。
仅供参考,Webmin 被证明是解决此问题的绝佳工具 ;-)