运行作业的用户与Web服务器(Apache)用户之间的Laravel文件权限不兼容

问题描述 投票:0回答:1

我在具有apache2并配置了管理员的VPS上有一个laravel应用。文件权限设置如下:

  • 整个项目目录归www-data组所有>
  • Apache使用www-data用户
  • 我和主管使用app用户,该用户属于www-data组。
  • 一切正常,直到我必须处理作业内部和Web服务器处理的请求内的某些文件。这是流程的摘要:

  • 用户上传文件。我将文件保存在local磁盘的临时目录中。
Storage::disk('local')->put('new-directory/filename', $fileContent);
  • 我派出了一份应详细说明文件的工作
  • 作业应在详细说明结束时删除文件:
Storage::disk('local')->delete('new-directory/filename');

但是实际上我得到的是一个权限错误,因为该文件归www-user所有,而主管使用该app用户来工作该队列却没有删除该文件的权限。

我尝试使用'public'可见性:->put('new-directory/filename', $fileContent, 'public'),但文件仍受保护。这是目录中ll的仓库:

-rw-r--r-- 1 www-data www-data 60780 Dec  5 14:15 $filename

是否有办法解决运行队列的用户与Web服务器用户之间的文件许可权问题?

我在具有apache2并配置了管理员的VPS上有一个laravel应用。文件权限设置如下:整个项目目录归www-data组所有Apache使用www-data ...

laravel file-permissions supervisord
1个回答
0
投票

您可以在超级用户中添加配置文件。

© www.soinside.com 2019 - 2024. All rights reserved.