【问题标题】:Permissions and security for users uploading images to website用户将图像上传到网站的权限和安全性
【发布时间】:2012-04-13 21:09:09
【问题描述】:

我正在为我的社交网站开发一项功能,该功能允许用户上传图片(以及后来的视频),然后其他人可以查看。该代码当前将上传的图像从临时上传目录复制到 Web 服务器文档根目录下的 /media/ 目录中,为其生成一个名称(我们不使用原始文件名)。图像也存储在 mongo gridfs 中。当请求图像文件时,我使用 htaccess 来查看文件是否存在 - 如果不存在,则将 URL 重写为 PHP 程序,该程序从 mongo 检索图像,将其写入 /media 下的文件名/ 和重定向。

我的问题是关于 /media 目录的安全性和相关目录权限。 /media/ 目录的权限使得它必须可由 www-data 写入。有没有办法在我的文档根目录下没有一个世界可写目录的情况下达到与我目前所拥有的效果相同的效果?我已经阅读了很多关于此类问题的关于 SO 的帖子,它们似乎说了不同的(尽管通常不冲突)的事情,我希望能对我应该注意的要点进行一个很好的总结。

【问题讨论】:

    标签: php apache security permissions image-uploading


    【解决方案1】:

    如果您只需要您的 PHP 脚本将文件上传到此文件夹(并更改其内容),您将需要让用户 Apache 作为该目录的所有者运行。

    要找出运行 Apache 的用户,请使用:

    ps aux | grep apache
    

    在 SSH 命令行上。然后找出 Apache 所属的用户组。正如你所说,它通常总是www-data,但你总是可以仔细检查以确定。知道后,将此组设置为目录的所有者:

    chgrp -R www-data /path/to/directory
    

    【讨论】:

      【解决方案2】:
      猜你喜欢
      • 2020-11-08
      • 2011-12-04
      • 2011-10-27
      • 2023-03-29
      • 2015-01-19
      • 2015-01-09
      • 2023-01-10
      • 1970-01-01
      • 2013-07-28
      相关资源
      最近更新 更多