【问题标题】:Ubuntu - The right permissions to use file_put_contentsUbuntu - 使用 file_put_contents 的正确权限
【发布时间】:2016-04-26 19:55:48
【问题描述】:

在我的 PHP 应用程序中,我使用 file_put_contents() 创建一个文件以显示包含从我的数据库中的表中检索到的 blob。但是,目前,为了让该功能在我的 Amazon EC2 Ubuntu 实例上运行,我必须将它正在写入的文件夹授予 777 权限。但是,我知道这非常糟糕,我想改变它,但我不知道该怎么做。

我是 Linux 新手,目前正在通过 Google 的帮助浏览我的实例。这是大学作业的一部分,所以我不能只聘请 Linux 专家(以防万一你们中的一个人说如果我不了解 Linux,我不应该使用这样的实例!)

【问题讨论】:

    标签: php ubuntu amazon-ec2 permissions


    【解决方案1】:

    假设您是从带有正常 http 请求的浏览器中使用它,您需要找出运行 Web 服务器的用户是什么。可能是 apachewww-user 或类似的东西。

    然后你可以做两件事:

    • 将要保存文件的目录的所有权更改为Web服务器用户,然后它可以拥有755权限
    • 将目录的组改为web-server的组,然后目录需要775。

    【讨论】:

    • 我使用了sudo chmod -R 755 /var/www/html/public,这样就足够了,还是我需要找到网络服务器用户?因为我不确定是什么。我尝试了www-userapache 以及chown 命令,但是SSH 终端说没有一个用户被识别。
    • @RoyalSwish 不,您需要网络服务器用户,否则它无法写入该目录。您可以在命令行上尝试$ ps aux 以查看正在运行的进程,并且网络用户应该从结果中显而易见。
    猜你喜欢
    • 2012-07-13
    • 1970-01-01
    • 2014-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-10
    • 2011-08-24
    • 1970-01-01
    相关资源
    最近更新 更多