【问题标题】:PHP / Unix - Unable to write to a file (permission denied - fopen)PHP / Unix - 无法写入文件(权限被拒绝 - fopen)
【发布时间】:2013-06-06 12:33:31
【问题描述】:

我有一个简单的问题让我感到困惑。我正在尝试使用 PHP fopen 写入文件,但出现错误

"Warning: fopen(/var/www/********/file.php): failed to open stream: Permission denied in /var/www/********/index.php on line 339 

我尝试写入的文件(和目录)(file.php)具有 777 权限,并且与 index.php 属于同一用户。

任何想法可能是什么问题?

【问题讨论】:

  • 文件系统是否使用64位inode?​​span>
  • 该文件是否已在其他进程/编辑器中打开?
  • 您是否在屏幕上或日志文件中看到有关 open_basedir 的任何消息?
  • 运行 apache 或您使用的任何网络服务器的用户可能对您尝试写入的路径没有写入权限。
  • 我居然发现这个问题与SELinux有关。我不太确定 SELinux 是如何工作的,但是通过运行命令“setenforce permissive”,我的问题得到了解决

标签: php unix permissions fopen


【解决方案1】:

问题与 SELinux 有关。我需要运行以下命令:

setenforce permissive

现在可以毫无问题地写入文件。

【讨论】:

    猜你喜欢
    • 2020-09-30
    • 2011-11-10
    • 2015-11-24
    • 2016-02-16
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-11
    相关资源
    最近更新 更多