解决了
我弄清楚了当前用户在使用 PHP 并设法将新目录的所有者设置为执行 PHP 脚本的用户。但是,这仍然会导致问题,因为其他一些命令(用于确定当前用户是谁)不起作用。这突出表明问题在于我的 PHP 发行版被配置为安全模式。
我禁用了安全模式,Ed Manet 提供的命令允许我根据需要添加/编辑/删除文件,而无需将所有内容都设置为 777 权限的快捷方式。
谢谢您的帮助!
原帖
我有一个在服务器上存储一些数据的 Web 应用程序。这涉及在 PHP 中创建和删除目录和文件(以及修改现有文件)。我遇到的主要问题是执行此类操作所需的权限。
如果我将现有文件的权限设置为 777,那么 PHP 脚本可以很好地编辑它们(尽管我知道这不是最佳解决方案,因为它不安全)。该脚本还可以很好地创建和删除目录(当它们至少具有 777 权限时),但无论我做什么,我都无法让脚本创建新文件。
我已经进行了一些搜索,看来我需要将 PHP“用户”提升为具有所需权限的用户。然而,当谈到服务器配置和权限时,我基本上是一个初学者。我将如何更改为不同的用户来执行所需的操作?是否可以执行此中间脚本并正常使用 PHPfopen()
和chmod()
函数?或者我是否必须使用 shell 命令生成一个全新的进程,以某种方式让该外部程序以正确的权限执行?
总而言之,我需要使用 PHP 在 Web 服务器中创建、修改和删除文件/目录的新方法,方法是为文件分配足够的权限并将权限分配给 PHP 用户。我不确定如何做到这一点。
谢谢你。