Linux文件上传,fwrites,不起作用

时间:2012-09-24 09:10:46

标签: php linux file-upload temporary-files

我在我的系统上安装了fedora15,安装了apache和php5.3以及mysql。我没有更改任何配置文件中的任何默认设置

创建了一个ftpuser并将文件上传到Documentroot,即'/ var / www / html /',当我运行php文件时,所有文件都成功运行。

但是当谈到文件上传,fopen,fwrite,imagemagick转换等所有涉及以编程方式创建文件的程序都不起作用。我已经为我运行php脚本的文件夹提供了777权限,但它仍然给了我访问被拒绝的错误。

以下是创建权限被拒绝错误的示例代码。

    $handle =   fopen("test.txt","w+");
    if(!$handle)die("Could not open file for writing");
    fwrite($handle,"Testing Uploads Successfull.");
    fclose($handle);

以上文件位于我新安装的fedora15系统的'/ var / www / html / test /'目录中。

虽然如果我使用php命令行以root用户身份运行此文件,它会正确地执行创建新文件及其中的文本。如果我在命令行中与另一个用户运行相同的文件,则会产生权限被拒绝错误,尽管该目录已获得777权限。

请任何人帮助我这个奇怪的behaiour,

提前致谢。

1 个答案:

答案 0 :(得分:1)

SELinux阻止Web服务器创建和写入文件。有关详细信息,请参阅httpd_selinux(8)手册页。