Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel:无法打开流权限被拒绝_Laravel_Docker_Composer Php_Laravel Artisan - Fatal编程技术网

Laravel:无法打开流权限被拒绝

Laravel:无法打开流权限被拒绝,laravel,docker,composer-php,laravel-artisan,Laravel,Docker,Composer Php,Laravel Artisan,试着寻找一个可靠的答案,但什么都没有。我当前的设置如下: 本地ubuntu服务器 码头工人 拉维应用 当存储/和引导/的所有权设置为www-data:www-data(chown)时,应用程序运行良好。我遇到的唯一问题是,当我尝试运行composer或artisan命令时,它会给我一个错误: 生成优化的自动加载文件 Illumb\Foundation\Composer脚本::postAutoloadDump @php artisan包:discover--ansi 意外值异常 无法在追加模式

试着寻找一个可靠的答案,但什么都没有。我当前的设置如下:

  • 本地ubuntu服务器
  • 码头工人
  • 拉维应用
当存储/和引导/的所有权设置为www-data:www-data(chown)时,应用程序运行良好。我遇到的唯一问题是,当我尝试运行composer或artisan命令时,它会给我一个错误:

生成优化的自动加载文件 Illumb\Foundation\Composer脚本::postAutoloadDump @php artisan包:discover--ansi 意外值异常 无法在追加模式下打开流或文件“/home/amplr/portal.amplr.be/storage/logs/laravel.log”:无法打开流:权限被拒绝

当我将所有权设置回ubuntu用户、作曲家和artisan作品时,应用程序抛出了权限错误。在我完成我的composer命令后,我必须回到www-data:www-data

我做错了什么?

我会用

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数据组为linux用户和apache用户读/写/执行。

这篇文章可能已经回答了这个问题

本质上,这里有两个不同的用户:

  • 您的PHP FPM用户将是
    www-data:www-data
    。此用户将具有写入日志文件的权限,这就是为什么此操作当前适用于您

  • 您的PHP CLI用户将是您作为哪个用户登录的。此用户听起来好像没有写入日志文件的权限


  • 有很多解决方案,从打开所有权限(坏主意)到为FPM和CLI用户创建新的日志文件。

    u需要授予
    /home/amplr/portal.amplr.be/storage
    文件夹
    sudo chmod-R 777/home/amplr/portal.amplr.be/storage
    这是否回答了您的问题?