【问题标题】:PHP write outside document rootPHP在文档根目录外写入
【发布时间】:2011-03-19 19:58:01
【问题描述】:

我正在尝试在 Web 服务器文档根目录之外的目录中创建一个文件。该文件夹的权限为 777,但 php 说 Permission Denied: 警告:fopen(/home/site2/public_html/images/x.jpg)[function.fopen]:无法打开流:第 2 行 /home/site1/public_html/test_sites.php 中的权限被拒绝 权限问题

<?php
$f = fopen('/home/site2/public_html/images/x.jpg', 'wb');

if(!$f) die("Permission problem");

fclose($f);
echo "OK";
?>

【问题讨论】:

  • public_html 听起来不像是在文档根目录之外。此外,您不希望任何文件夹是世界可写的 (777),除非您希望您的安全性转到 666。

标签: php permissions


【解决方案1】:

777 权限是成功的一半。您还需要使用以下命令将组更改为 www-data(如果在 debian 上):

chgrp g+w www-data /home/growtent/public_html/images

“应该”工作,这取决于您正在运行的系统以及我的记忆是正确的。

【讨论】:

    【解决方案2】:

    听起来safe mode 已打开并且doc_root 已设置。您需要将doc_root 设置为清空或关闭安全模式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-21
      • 2017-09-28
      • 1970-01-01
      • 2014-12-18
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 2014-02-19
      相关资源
      最近更新 更多