【问题标题】:Laravel - EC2 Image Upload Folder PermissionsLaravel - EC2 图像上传文件夹权限
【发布时间】:2018-12-28 21:51:17
【问题描述】:

我在 Amazon Elastic Beanstalk 实例上安装了 Laravel 5.6 应用程序。除了图片上传,一切都很好。当我尝试上传图片时,我收到以下错误消息..

/var/app/current/storage/app/images/uploadedimage.jpg): failed to open stream: Permission denied

我已运行以下命令设置所有权和权限为 755..

sudo chown -R ec2-user:ec2-user /var/app/current/storage/app/images/

但我仍然收到错误,任何人都可以解释为什么会发生这种情况以及我应该设置的正确权限吗?

【问题讨论】:

  • 文件夹的权限是什么?尝试 755 文件夹和 644 文件。
  • 抱歉,忘记提及权限了。他们是 755,有更新的问题
  • /var/app/current/storage 的权限是什么? IIRC 整个存储目录需要为 755。
  • 整个存储文件夹和所有子目录都是755和ec2-user:ec2-user

标签: laravel laravel-5


【解决方案1】:

最后解决了这个问题。出现问题是因为 apache 服务是从不同的用户运行的。我用这个命令找出用户..

ps aux | egrep '([a|A]pache|[h|H]ttpd)' | awk '{ print $1}' | uniq | tail -1

返回“webapp”的用户 - 所以现在我运行我的 chmod 代码...

sudo chown -R webapp:webapp /var/app/current/storage/app/images/

现在 al 可以正常工作了。希望这可以帮助遇到同样问题的人

【讨论】:

  • 救命我得到了在 EC2 上获得 WordPress 安装许可的小问题,用 sudo chown -R www-data:www-data /var/www/html/wordpress/wp-content 解决了
猜你喜欢
  • 2014-08-18
  • 2019-04-11
  • 2018-02-03
  • 2013-02-14
  • 2016-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-14
相关资源
最近更新 更多