Chmod 666 和 getimagesize 的访问被拒绝

发布于 2024-12-10 14:14:09 字数 453 浏览 4 评论 0原文

首先,这不是重复的: Permission returned on getimagesize

我得到以下代码,我对图像进行了 chmod 操作,然后我不想知道它的大小。

@chmod($path."/".$filename, '0666');
getimagesize($path . "/" . $filename);

但如果我设置 chmod,我会收到以下错误消息:

无法打开流:权限在[...]中被拒绝

有什么问题?所有文件和目录都具有相同的组和所有者 - www-data

First of all, this is not a duplicate of : Permission denied on getimagesize

I got following code, where I sat an chmod for the image, and then I wan't to get it's size.

@chmod($path."/".$filename, '0666');
getimagesize($path . "/" . $filename);

But if I set a chmod, I'm receiving this error message:

failed to open stream: Permission denied in[...]

What is the problem? All files and the directory has the same group and owner - www-data.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

滴情不沾 2024-12-17 14:14:09

尝试在路径之前添加 / 。不确定 php,但我知道 python 不会将初始 / 添加到某些路径操作,因此它可能正在寻找相对路径而不是绝对路径:

@chmod("/". $path."/".$filename, '0666');
getimagesize("/". $path . "/" . $filename);

Try putting a / before path. Not sure about php, but I know python wont add the initial / to certain path operations, so it may be looking for a relative path instad of absolute:

@chmod("/". $path."/".$filename, '0666');
getimagesize("/". $path . "/" . $filename);
一世旳自豪 2024-12-17 14:14:09

实际上你真的需要在 getimagesize 之前 chmod 吗?

如果是这样,也许你可以尝试将 umask 放在 chmod 之前。
像这样的东西?

$old = umask(0); 
chmod($path,0777);
umask($old);

Actually do you really need to chmod before getimagesize?

if so, maybe u can try putting umask before chmod.
something like this?

$old = umask(0); 
chmod($path,0777);
umask($old);
一杆小烟枪 2024-12-17 14:14:09

首先,如果 www-data (假设这是您的用户),chmod 将不会成功(权限将被拒绝;也许您收到的错误来自 chmod?) webserver) 没有目录 $path 的写入权限。确保www-data$path的所有父目录具有读取权限和对$path<的写入权限< /代码>。

另外,请确保在 chmodgetimagesize 中使用绝对路径。

First of all, chmod won't succeed (permission will be denied; maybe the error you get is from chmod?) if www-data (assuming that's the user of your webserver) doesn't have write access to the directory $path. Ensure www-data has read-permission to all parent dirs of $path and write-permission to $path.

Also, ensure that you use absolute paths, both in chmod and getimagesize.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文