Laravel:无法打开流权限被拒绝[关闭]
Posted
技术标签:
【中文标题】Laravel:无法打开流权限被拒绝[关闭]【英文标题】:Laravel: failed to open stream permission denied [closed] 【发布时间】:2020-12-13 22:25:05 【问题描述】:尝试寻找一个可靠的答案,但还没有。我目前的设置如下:
本地 ubuntu 服务器 码头工人 laravel 应用当 storage/ 和 bootstrap/ 的所有权设置为 www-data:www-data (chown) 时,应用运行良好。我唯一遇到的问题是,当我尝试运行 composer 或 artisan 命令时,它会给我一个错误:
生成优化的自动加载文件 Illuminate\Foundation\ComposerScripts::postAutoloadDump @php 工匠包:发现 --ansi 意外值异常 无法以附加模式打开流或文件“/home/amplr/portal.amplr.be/storage/logs/laravel.log”:无法打开流:权限被拒绝
当我将所有权设置回 ubuntu 用户时,作曲家和工匠工作,但应用程序抛出权限错误。完成作曲家命令后,我必须返回 www-data:www-data。
我做错了什么?
【问题讨论】:
你需要授予/home/amplr/portal.amplr.be/storage
文件夹sudo chmod -R 777 /home/amplr/portal.amplr.be/storage
的权限
这能回答你的问题吗? Laravel daily log created with wrong permissions
【参考方案1】:
我会用
sudo chown -R $USER:www-data storage
sudo chown -R $USER:www-data bootstrap/cache
一起
chmod -R 775 storage
chmod -R 775 bootstrap/cache
因此,您可以通过 www-data 组为您的 linux 用户和 apache 读取/写入/执行。
【讨论】:
【参考方案2】:这个帖子可能已经回答了。
Laravel daily log created with wrong permissions
本质上,这里有两个不同的用户在工作:
您的 PHP FPM 用户将是 www-data:www-data
。该用户将有权写入日志文件,这就是目前对您有用的原因。
您的 PHP CLI 用户将是您登录的任何用户。该用户听起来好像没有写入日志文件的权限。
对此有多种解决方案,从开放所有权限(坏主意)到为 FPM 和 CLI 用户创建新的日志文件。
【讨论】:
以上是关于Laravel:无法打开流权限被拒绝[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
“无法打开流或文件“laravel.log”:无法打开流:权限被拒绝”
laravel - 无法以附加模式打开流或文件“/storage/logs/laravel.log”:无法打开流:权限被拒绝
xampp ubuntu laravel 无法打开流或文件“/storage/logs/laravel log”:无法打开流:权限被拒绝