【问题标题】:mkdir() permission denied codeignitermkdir() 权限被拒绝
【发布时间】:2016-08-24 09:42:45
【问题描述】:

我正在尝试使用 PHP mkdir 函数创建一个目录,但出现如下错误: 警告:mkdir(): Permission denied in /Applications/XAMPP/xamppfiles/htdocs/tiki-id/system/core/Log.php on line 122

这是第 122 行:

file_exists($this->_log_path) OR mkdir($this->_log_path, 0777, TRUE);

我将 temp_sess 文件夹放在“Mac/XAMPP/xamppfiles/htdocs/tiki-id/temp_sess”上

还有我的 config.php :

$config['sess_save_path'] = './temp_sess/';

我的 temp_sess 文件夹:

我做错了什么?

我在 mac,web 服务器 xampp..

【问题讨论】:

    标签: php macos codeigniter


    【解决方案1】:

    检查文件夹权限。它是写保护的。尝试为该文件夹授予 777 权限

    【讨论】:

    • 右键单击该文件夹,然后将权限更改为读取和写入
    • 再次检查权限。我很确定权限没有设置。
    【解决方案2】:
    1. 检查您如何命名目标文件夹,例如:new_folder(有时这会导致权限错误,因为大多数主机不允许在运行时创建使用下划线、破折号等的名称)。它对我有用。
    2. 如果您使用递归命令创建子文件夹,请不要忘记将 0777 放入 mkdir 命令,例如:

      if(!file_exists($output)){
          if (!mkdir($output, 0777, true)) {//0777
              die('Failed to create folders...');
          }
      
      }
      

    这对我也有效。

    【讨论】:

    • 它根本不工作。我的 PHP 代码函数 validateUserDirectory($userId){ define('UPLOAD_DIR', './myfolder'); $file = UPLOAD_DIR 。 '/用户/' 。 'nnn'; if(!file_exists($file)){ if (!mkdir($file, 0777, true)) {/0777 die('创建文件夹失败' . $file); } } } 错误消息

      消息:mkdir(): Permission denied

    【解决方案3】:

    只是为了确认,遇到了同样的问题,但问题是我们设置了$config['log_path'] = {找不到的路径}。我们添加了路径并更新了权限,错误消失了。

    【讨论】:

      【解决方案4】:

      第一次$this->log_path路径不存在

      1--> 转到application/config/config.php 并检查log_path。默认log_path = application/logs/

      /*
        |--------------------------------------------------------------------------
        | Error Logging Directory Path
        |--------------------------------------------------------------------------
        |
        | Leave this BLANK unless you would like to set something other than the default
        | application/logs/ directory. Use a full server path with trailing slash.
        |
       */
      $config['log_path'] = '';
      

      2--> 在application内创建一个名为logs的新文件夹

      3--> 授予logs文件夹777权限(命令:chmod 777 logs

      希望它会起作用。

      【讨论】: