windows 服务器 2012 中 laravel APP QUEUE 的权限问题
Permission Issue for laravel APP QUEUE in windows server 2012
我们在 WIndows Server 2012 R2 中部署了一个 laravel 应用程序(版本 5.5*)。但我们的开发堆栈是 LEMP。相同的代码库在开发堆栈中工作正常但在 WINDOWS 服务器中失败。
问题:
在我们的应用程序中,有一个 REPORT DOWNLOAD queueable job 从数据库 table 读取数据并使用 [=28= 生成一个 excel 文件]box/spout 包(版本 2.7) 取决于用户输入的日期范围(每日、每周、每月等)。
当 运行 从 cmd 以管理员身份执行 queue:work 命令时,
$writer->openToFile(‘path/to/file’)
抛出错误:无法打开流:没有这样的文件或目录。
See this image for code snippet throwing error
我尝试过的解决方案:
- 为我的项目的存储文件夹设置正确的权限(完全控制读写)(对于用户,IIS_IUSRS,IUSR)
- 为 C:windows\Temp 文件夹设置权限(完全控制读写)(对于用户,IIS_IUSRS,IUSR)
- 为 public
中的存储文件夹创建了符号链接
仅供参考:
- OS: windows 服务器 2012 r2
- PHP: 7.2*
- Laravel: 5.5.*
- box/Spout 包:2.7.*
** 在回答了与此问题相关的其他问题后,终于找到了解决方案 **
您可以按照以下步骤操作:
- 转到 IIS 管理器
Select您想要的项目(例如:myexampledomain.com)列在网站
[=45=下]
转到安全 选项卡,您将看到列出的用户及其对该文件夹的权限。
现在,单击编辑 按钮转到新的window,然后单击添加。在文本框中,键入 IIS AppPool\MyApplicationPoolName
。在我们的示例中,它应该是 IIS AppPool\myexampledomain.com
。
单击检查名称,您将看到带有下划线的测试更改。
单击确定。为新创建的用户添加适当的权限(Modify,read,write)。
就是这样了!!!
感谢大家的回复。
我们在 WIndows Server 2012 R2 中部署了一个 laravel 应用程序(版本 5.5*)。但我们的开发堆栈是 LEMP。相同的代码库在开发堆栈中工作正常但在 WINDOWS 服务器中失败。
问题:
在我们的应用程序中,有一个 REPORT DOWNLOAD queueable job 从数据库 table 读取数据并使用 [=28= 生成一个 excel 文件]box/spout 包(版本 2.7) 取决于用户输入的日期范围(每日、每周、每月等)。
当 运行 从 cmd 以管理员身份执行 queue:work 命令时,
$writer->openToFile(‘path/to/file’)
抛出错误:无法打开流:没有这样的文件或目录。
See this image for code snippet throwing error
我尝试过的解决方案:
- 为我的项目的存储文件夹设置正确的权限(完全控制读写)(对于用户,IIS_IUSRS,IUSR)
- 为 C:windows\Temp 文件夹设置权限(完全控制读写)(对于用户,IIS_IUSRS,IUSR)
- 为 public 中的存储文件夹创建了符号链接
仅供参考:
- OS: windows 服务器 2012 r2
- PHP: 7.2*
- Laravel: 5.5.*
- box/Spout 包:2.7.*
** 在回答了与此问题相关的其他问题后,终于找到了解决方案 **
您可以按照以下步骤操作:
- 转到 IIS 管理器
Select您想要的项目(例如:myexampledomain.com)列在网站
[=45=下]转到安全 选项卡,您将看到列出的用户及其对该文件夹的权限。
现在,单击编辑 按钮转到新的window,然后单击添加。在文本框中,键入
IIS AppPool\MyApplicationPoolName
。在我们的示例中,它应该是IIS AppPool\myexampledomain.com
。单击检查名称,您将看到带有下划线的测试更改。
单击确定。为新创建的用户添加适当的权限(Modify,read,write)。
就是这样了!!!
感谢大家的回复。