php - Linux 文件上传,fwrites,不工作

标签 php linux file-upload temporary-files

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

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

但是当谈到文件上传时,fopen、fwrite、imagemagick convert 等所有涉及以编程方式创建文件的程序都不起作用。我已经为我运行 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 权限。

请任何人帮助我解决这个奇怪的问题,

提前致谢。

最佳答案

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

关于php - Linux 文件上传,fwrites,不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12561948/

相关文章:

linux - 如何在 Linux 上使用 xlib 监听屏幕分辨率变化

php - 使用 jquery/php/html 更改 img src 和 fileupload 值

ruby-on-rails - 在Rails Controller 中获取Carrierwave上传的文件名

php - 目录中每个文件的循环代码

php - 从 mysql 结果中打印 $variable

php - 计算两个连续日期之间的最大天数

linux - 如何从 Haskell 为所有用户设置文件权限

Linux 在目录之前重命名文件

c# - 如何通过动态加载的控件将数据保存到数据库

php - 解释一下,一个或多个数组php?