php - 为什么我的 PHP 脚本不能对它创建的文件进行 chmod?

标签 php apache chmod

我有一个 php,它创建一个需要可执行的文件(它是一个需要由系统运行的批处理文件)。出于某种原因,即使该文件由 apache 拥有并且 php 作为 apache 运行,并且文件已创建,脚本也会在 chmod 行终止。我需要进行哪些不同的配置以允许 php chmod 它创建的文件?它上面的两行很高兴地为这个文件创建了一个目录,它在创建它时将其修改为 755。我是否遗漏了一些明显的东西?

我的 chmod 行看起来像这样:

    $uploadFilePath = "./path/to/file/";
    if(!is_dir($uploadFilePath)){
          mkdir($uploadFilePath, 0777 , true) or die("ERROR:can't create directory '$uploadFilePath'");
    }
        ...
    //write batch file
      ...
    chmod ($uploadFilePath . 'sftp.batch' ,0777 ) or die ("\ncan't chmod  " . $uploadFilePath . 'sftp.batch');

最佳答案

很可能是由于 umask .尝试在 chmod 之前将其设置为 0

关于php - 为什么我的 PHP 脚本不能对它创建的文件进行 chmod?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5697595/

相关文章:

php - 使用键 php 获取下一个数组项

php - 组合 mySQL 语句

php - mysqli_query()出现错误

linux - 无法找到 mini-httpd 包?

apache - node.js、socket.io 和 SSL

php - 由于电子邮件发送延迟 PHP CodeIgniter

apache - 如何在 Apache 中设置响应超时

python - 使用python设置组权限

Linux 设置文件夹权限(ftp 和 Apache2)

c - 如何设置输出文件模式权限(rw-rw-rw-)