不良文件描述符在IIS服务器上部署symfony

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

我需要使用IIS在Windows Server上部署基于Symfony的API应用程序。我通常使用Nginx服务器,但需要在具有ASP.NET应用程序的计算机上使用netFramework dll。

我已经在Windows服务器上成功安装了PHP,并且phpinfo()可以正常工作。另外,我已经从Symfony上传了所有代码(已经使用Symfony Local Web Server进行了测试)。但是,当我尝试访问项目的主页(默认的Symfony页面)时,出现此错误:

Notice: fwrite(): write of 163 bytes failed with errno=9 Bad file descriptor

我发现例外来自vendor\symfony\http-kernel\Log\Logger.php在第82行:

fwrite($this->handle, $formatter($level, $message, $context));

[调试后,我发现Symfony正在尝试写入php://stderr数据流,因此我想我有一个权限问题。我试图写出不同的文件夹,以授予IIS用户对这些文件夹的写权限,并将PHP和IIS服务器的错误日志配置移到它们。

此外,我只能访问主页(获得500错误的页面,在任何其他途径中,我都获得404错误。

最后一条注释,当使用Postman向Symfony应用程序发出GET请求时,我获得了Symfony响应(仅在主页上,在其他页面中我获得了IIS服务器页面错误)

php symfony iis-7
1个回答
0
投票

最后成功了!

如果有人遇到同样的问题,我会回答自己。

似乎是PHP 7.4的一个错误,我尝试使用PHP 7.3并像一个魅力一样工作

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