【问题标题】:Permission denied when uploading file上传文件时权限被拒绝
【发布时间】:2015-07-11 04:45:58
【问题描述】:

当我上传文件时它显示

“打开流失败:权限被拒绝”

我授予 777 文件目标目录的权限 /tmp 目录也授予 777 权限,即使我将 apache 用户分配给 /tmp 和目标目录我不知道实际问题在哪里,我正在运行 Amazon Aws centos 7 架构和 php 5.4 我有 gd 库和所有基本的上传图片需要扩展...

【问题讨论】:

  • 首先,您不应该对文件和文件夹应用 777 权限,其次,您应该对要上传文件的文件夹应用读写权限,而不是 777 b>tmp 目录。
  • 这与图像处理有什么关系?您在上传文件时遇到问题 - 这与文件本身的类型(即图像)无关。

标签: php amazon-web-services file-permissions centos7


【解决方案1】:

很可能您的服务器启用了 selinux。 Security Enhanced Linux 增强了针对攻击的强化能力,但需要更多的管理工作。

如果您的文件/目录属性后跟一个点,则可以使用扩展的 selinux 属性:

[root@www tmp]# ls -ld
drwxrwxrwt. 14 root root 4096 May  4 08:45 .
          ^-- this dot means: there are more selinux attributes

要显示扩展属性,您可以使用-Z 参数:

[root@www tmp]# ls -Zd
drwxrwxrwt. root root system_u:object_r:tmp_t:s0       .

当然你可以只禁用 selinux,但我不推荐它。要允许网络服务器写入目录,您可以使用chcon 命令:

chcon -R -t httpd_sys_content_rw_t /path/to/directory

【讨论】:

    猜你喜欢
    • 2014-12-06
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 2017-12-25
    • 2010-12-13
    • 1970-01-01
    • 2016-01-05
    相关资源
    最近更新 更多