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 管理器
  • Select您想要的项目(例如:myexampledomain.com)列在网站

    [=45=下]
  • 转到安全 选项卡,您将看到列出的用户及其对该文件夹的权限。

  • 现在,单击编辑 按钮转到新的window,然后单击添加。在文本框中,键入 IIS AppPool\MyApplicationPoolName。在我们的示例中,它应该是 IIS AppPool\myexampledomain.com

  • 单击检查名称,您将看到带有下划线的测试更改。

  • 单击确定。为新创建的用户添加适当的权限(Modify,read,write)。

就是这样了!!!

感谢大家的回复。