在根目录中使用 php 创建文件夹在 ubuntu 中显示 mkdir 错误

在根目录中使用 php 创建文件夹在 ubuntu 中显示 mkdir 错误

我的问题是,在尝试使用 php 脚本创建文件夹时出现以下错误/opt/lampp/htdocs/

mkdir():权限被拒绝

我正在使用 ubuntu 系统并安装了 lampp。在我的应用程序中,我需要创建一个文件夹来/opt/lampp/htdoc/临时存储文件。

我可以通过 php 脚本动态创建文件和文件夹。

我已经检查了我的文件夹所有者和组,并将其更改为 www-data:www-data,与内部文件夹相同,但仍然存在同样的错误。

这是我创建文件夹的代码:

$old = umask(0); 
mkdir($UploadDirectory, 0777,true);
umask($old);

我的$UploadDirectory路径也是正确的/opt/lampp/htdocs/mydirectory

我已经尝试了 StackOverflow 中所有可用的答案,这就是我创建新问题的原因。请帮忙。

答案1

由于你正在运行 ubuntu,请查看应用装甲因为这可能是阻止您写作的原因。您可以运行 aa-logprof 并按照提示进行操作。

答案2

我注意到其他一些网站也问过这个问题,并给出了不同的答案,但对我来说都不起作用。我附上了最终对我的情况有用的答案。我希望这些信息至少能对一些人有所帮助。

对我来说不起作用但可能对某些人有用的解决方案是:

$old = umask(0);
mkdir("/path/some_dir/", 0755, true);
umask ($old);

但对我来说,有一个有点奇怪的行为:

$old = umask(0000);
mkdir(“/var/www/html/somewebsite/images/somefolder/somefolder/", 6640, true);
umask ($old);

创建的文件夹似乎最终具有 640 权限。

相关内容