【发布时间】:2014-10-07 17:07:52
【问题描述】:
我在 CentOS 上有一个 Apache HTTP 服务器,我安装了 PHP (yum install php),然后测试了一个将文本写入文件的简单脚本,所以我这样做了
$file = fopen($filename,"w") or die("Failure");
问题是它总是失败,即使我在那个目录中做了chown apache:apache /var/www/html/* 或chmod 777 *,所以有人知道如何理解/解决这个问题吗?
编辑:所以问题是目录本身没有 chown
【问题讨论】:
-
您可以尝试在目录中创建一个文件吗?这应该可以区分它是权限问题还是编码问题..
-
#1 包含您的代码。 #2 你考虑过 SELinux 了吗?
-
您是在该目录还是
/var/www/html/的子目录中创建文件并运行脚本? -
使用
-R选项与chmod和chown递归应用模组。然而,777是您可以设置的最差的 chmod。在文件上使用更体面的640,在目录上使用750。 -
如果你只在“那个目录”做了一个chmod,问题很可能是“那个目录”没有写权限。因此,如果您正在写信给
/var/www/html/并失败,请检查/var/www/html/的权限。仅当文件已存在时,更改目录中文件的权限才会有所帮助。更改您正在写入的目录的权限将允许您创建一个新文件。