Laravel 无法使用权​​限 775 写入 /storage - Amazon AWS Linux

Laravel fails to write to /storage with permission 775 - Amazon AWS Linux

我正在尝试让我的 Laravel 5.3 安装在 Amazon Linux AMI EC2 实例上运行。

至此一切就绪:

文件夹权限设置为 775(遵循 AWS 文档):

drwxrwsr-x  6 ec2-user www   4096 Sep 20 13:38 app
-rwxr-xr-x  1 ec2-user www   1646 Sep 20 13:38 artisan
drwxrwsr-x  3 ec2-user www   4096 Sep 20 13:38 bootstrap
-rw-rw-r--  1 ec2-user www   1283 Sep 20 13:38 composer.json
-rw-rw-r--  1 ec2-user www 124068 Sep 22 17:27 composer.lock
drwxrwsr-x  2 ec2-user www   4096 Sep 20 13:38 config
drwxrwsr-x  5 ec2-user www   4096 Sep 20 13:38 database
-rw-rw-r--  1 ec2-user www    556 Sep 20 13:38 gulpfile.js
-rw-rw-r--  1 ec2-user www    400 Sep 20 13:38 package.json
-rw-rw-r--  1 ec2-user www    930 Sep 20 13:38 phpunit.xml
drwxrwsr-x  4 ec2-user www   4096 Sep 20 13:38 public
-rw-rw-r--  1 ec2-user www   1918 Sep 20 13:38 readme.md
drwxrwsr-x  5 ec2-user www   4096 Sep 20 13:38 resources
drwxrwsr-x  2 ec2-user www   4096 Sep 20 13:38 routes
-rw-rw-r--  1 ec2-user www    563 Sep 20 13:38 server.php
drwxrwsr-x  5 ec2-user www   4096 Sep 20 13:38 storage
drwxrwsr-x  2 ec2-user www   4096 Sep 20 13:38 tests
drwxrwsr-x 31 ec2-user www   4096 Sep 22 17:27 vendor

现在,如果我在 /blog/storage 上设置权限 777,Laravel 加载就很好,但我不确定这是否是个好主意。

为什么 Apache2 服务器无法使用权​​限 775 写入 /blog/storage,而所有者组是 www? 谢谢!

有了 755 权限,所有者(在您的情况下为 ec2-user)将具有写入权限,而组 www 将仅对该目录具有读取和执行权限。

您可以使用 acl 为 运行 进程的用户授予写入权限,而不是授予 777

setfacl -m u:user:rwx /blog/storage