我已经将本地的Laravel 5存储文件夹设置为权限
然而,我感觉这是一个(可怕的)临时补救措施,真正的问题是它允许任何用户使用所有权限修改该目录,而不是只有拥有受限权限的正确用户。我不知道这个问题是否会影响开发或生产服务器,但在这种情况下授予这些权限并不是一个选项。
如何找出哪个用户(或组)实际上需要权限来使用此目录进行Laravel日志记录,以便我可以将该目录分配给他们并将权限返回到755?
我已经尝试过:
755
和用户www-data
,因为我在我的机器上使用apache2
。然而,当出现错误时,我得到的是空白屏幕而不是堆栈跟踪,所以我将权限更改为777
,这解决了问题。然而,我感觉这是一个(可怕的)临时补救措施,真正的问题是它允许任何用户使用所有权限修改该目录,而不是只有拥有受限权限的正确用户。我不知道这个问题是否会影响开发或生产服务器,但在这种情况下授予这些权限并不是一个选项。
如何找出哪个用户(或组)实际上需要权限来使用此目录进行Laravel日志记录,以便我可以将该目录分配给他们并将权限返回到755?
我已经尝试过:
ps aux | egrep '(apache|httpd)'
但它显示大多数进程都以 www-data
身份运行...
ls -l
命令。它将打印所有目录及其各自的所有者。要更改所有者,您可以使用chown
命令-有关详细信息请参阅man页面。嗯,要检查进程的用户,请使用ps u
命令。说实话,这个问题大多与超级用户有关。 - Bagus Tesaerror_reporting
并配置了你的.htaccess
了吗? - Sulthan Allaudeenchmod 775 storage
,那只会改变storage
目录的权限,但是里面的文件和文件夹仍然有不同的权限,chown
同理。通常我会运行这个命令来更改组chgrp -R www-data storage
,以及这个命令来更改权限chmod -R 775 storage
,这样你可以将任何用户设置为所有者(甚至是root
),但 Apache 仍然可以写入存储文件,因为组被设置为www-data
。如果这些方法无法解决问题,也请提供你遇到的错误信息。 - Bogdan777
权限的情况下,只需访问返回视图的路由,然后检查storage/framework/view
目录并查看其中的视图缓存文件的所有者(使用ls -l
命令),因为它们是由HTTP服务器创建的。如果您正在运行基于Debian的操作系统(例如Ubuntu),则Apache用户很可能是www-data
。 - Bogdanstorage/framework/view
的所有者是www-data
。可能是一个.htaccess
问题... - myol