【问题标题】:How do I change directory permissions for laravel logs?如何更改 laravel 日志的目录权限?
【发布时间】:2021-11-30 18:04:48
【问题描述】:

我正在从以下已解决的问题"The stream or file "laravel.log" could not be opened: failed to open stream: Permission denied"中寻找更详细的答案

我还是 Web 开发新手,在终端中输入建议的命令 (sudo chown -R $USER:www-data storage) 时出现以下错误:chown: invalid group: 'root:www-data'

我也尝试过 (sudo chown -R www-data:www-data /home/EXAMPLE/EXAMPLE) 导致我的项目文件夹,但收到以下错误:chown: invalid user: 'www-data:www-data '

我这样做是为了解决权限问题:

无法以附加模式打开流或文件“/home/EXAMPLEURL/EXAMPLEURL/storage/logs/laravel.log”:无法打开流:权限被拒绝。

我通过使用以下命令 (find / -name httpd.conf | xargs grep -i "^user") 和 (find / -name httpd.conf | xargs grep -我“^组”)。

在终端中,我尝试了存储文件夹中的以下命令(sudo chown -R nobody:nobody /home/EXAMPLE/EXAMPLE/storage),它的上一级和上一级。终端没有返回错误,但权限错误仍然显示在直播网站上

谢谢!

【问题讨论】:

  • 你的服务器上运行的是什么操作系统(有版本)?
  • CENTOS 7.9 kvm v98.0.9
  • 你用的是apache还是nginx?
  • 我正在使用 Apache

标签: laravel directory console file-permissions vps


【解决方案1】:

在您的服务器/终端中运行以下命令

chmod -R 775 storage

它改变了存储文件夹的读/写权限。

【讨论】:

  • 我输入了返回无目录错误的命令 (chmod -R 775 storage)。然后我用 /home/EXAMPLE/EXAMPLE 替换了存储,它没有返回错误但没有进行任何更改。然后我还尝试了 /home/EXAMPLE/EXAMPLE/storage/logs ,它再次没有返回错误但没有变化。
  • 您必须在确切的存储路径中才能运行该命令。例如,如果存储路径是 - var/www/vhosts/example.com/httpdocs/storage,那么您必须在此路径上运行该命令 - var/www/vhosts/example.com/httpdocs
  • 感谢您的进一步帮助!所以我直接进入存储路径(/home/EXAMPLE/EXAMPLE)并运行命令(chmod -R 775 /home/EXAMPLE/EXAMPLE/)。这没有改变,所以我上一层并尝试了相同的命令以及(chmod -R 775 /home/EXAMPLE/)。仍然没有变化。
  • 在运行上面的命令之前尝试运行这个命令 chown -R username:psacln storage - 在上面的“用户名”是你的服务器登录用户名
  • 错误:chown:无效组:'USERNAME:psacln'
【解决方案2】:

与 Debian/Ubuntu 不同,CentOS 不使用 www-data

我很确定在你的情况下用户和组是apache。所以,像下面这样的东西应该可以解决问题:

sudo chown -R apache:apache /home/EXAMPLEURL/EXAMPLEURL/storage

【讨论】:

  • 我通过使用以下命令 (find / -name httpd.conf | xargs grep -i "^user") 和 (find / -name httpd. conf | xargs grep -i "^group")。我已经尝试了您在存储目录及其上方级别中建议的命令(sudo chown -R nobody:nobody /home/EXAMPLE/EXAMPLE/storage)。没有错误,但仍然是相同的权限被拒绝错误
【解决方案3】:

解决方案,由一位名叫 Rasedul 的好心人提供。

上述解决方案不起作用的原因是以前的所有者是nobody。将所有者更改为 root 允许更改生效

sudo chgrp -R $USER 存储路径

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 2020-11-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-23
    • 1970-01-01
    相关资源
    最近更新 更多