微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP权限错误 – 我需要执行权限?

我已经写了一个PHP脚本file upload和testing我给我的上传目录777权限。 脚本工作正常。

现在我想删除执行权限的显而易见的原因,但一旦我这样做,我得到以下错误

move_uploaded_file([filepath])[function.move-uploaded-file]:未能打开stream:权限被拒绝

只要将权限从777降低到776,就会在我尝试上传文件时出现此错误。 我不明白为什么执行权限应该与这个有什么关系 – 有人可以摆脱一些光?

在Windows中安装ImageMagick for paperclip gem

PHP在Linux服务器上保存错误编码的上传文件

PHP上传的问题

PHP错误上传文件

Mediawiki中的file upload错误1.22.3 – 无法创build目录“mwstore:// local-backend / local-public / 7/70”

谢谢!

如何以编程方式/远程执行EC2 Windows实例中的程序

CKeditor&kcfinder在localhost

可定制的Windows右键单击file upload?

文件PHP上传下降(没有错误

减lessPHP中的内存消耗,同时通过PHPinput处理上传

目录必须具有执行权限才能在Unix和Linux中访问。

从这里引用:

在目录中,执行权限(也称为“搜索位”)允许您访问目录中的文件,并使用cd命令输入该文件。 但是,请注意,虽然执行位允许您进入目录,但不允许列出其内容,除非您还拥有对该目录的读取权限。

我同意lserni的事实,撤销O(第三位数字)目录的执行权限导致的问题是令人担忧的,因为它表明,网络服务器既不是作为所有者,也不是组的成员访问目录。 你应该解决这个问题。

只是将权限从777降低到776会导致出现此错误

这不应该发生。 您应该能够以770个权限运行,即该目录应该由网站用户标识拥有,并与该组服务器共享。

这样,所有者和网络服务器都能够操作目录和数据。 理想情况下,为您的网站提供服务的Web服务器应该采用与网站所有者相同的用户ID,这样您可以保持目录模式700,并且只有您可以读写和列出。

如果权限的最后一位数字正在咬你,这意味着服务器正在运行“everyone”的权限,这对开发网站来说可能是好的,但在共享网站上却不是太好(假设你的密码是可读的机器中的任何其他网站所有者)。

但是,如果您正在测试机器上运行,则777权限是可以的。 目录可执行位并不意味着可执行文件一个目录不能被执行),而仅仅是“可列出的”。 没有那一点,你可以创建和删除文件,但你不知道它们是否真的在那里, move_uploaded_files是反对这种情况。

还有其他解决方案(例如在Apache中对每个虚拟主机进行chroot ); 另请参见什么是Apache可写目录权限的最佳实践?

删除执行权限你需要执行下面的命令..

chown -R nobody upload_directory chmod -R 755 upload_directory

一个命令将你的upload_directory的所有者和它下面的文件改变为“nobody”,这是PHP运行的。 第二个更改upload_directory和文件只允许用户访问写入。 -R是递归的

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐