我与其他项目有类似的配置,它运行良好。但是,这个项目有问题:
致命错误:未捕获UnexpectedValueException:流或文件" /home/docker/test-project/var/logs/prod.log"无法打开:无法打开流:/home/docker/test-project/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:107权限被拒绝堆栈跟踪:#0 / home / docker / test -project / vendor / monolog / monolog / src / Monolog / Handler / AbstractProcessingHandler.php(37):Monolog \ Handler \ StreamHandler-> write(Array)#1 / home / docker / test-project / vendor / monolog / monolog /src/Monolog/Handler/FingersCrossedHandler.php(122):Monolog \ Handler \ AbstractProcessingHandler-> handle(Array)#2 /home/docker/test-project/vendor/monolog/monolog/src/Monolog/Logger.php (336):Monolog \ Handler \ FingersCrossedHandler-> handle(Array)#3 /home/docker/test-project/vendor/monolog/monolog/src/Monolog/Logger.php(643):Monolog \ Logger-> addRecord(500,' Uncaught PHP Ex ...',Array)#4 / home / docker / test-project / vendor / symfony / symfony / src / Symfony / Component / HttpKernel / EventListener / ExceptionListener。 php(89):Monolog \ Logger-> critical(' Uncaught PHP Ex。在/ home / docker / test-project / vendor / monolog / mono第107行的log / src / Monolog / Handler / StreamHandler.php
我尝试过:http://symfony.com/doc/current/setup/file_permissions.html并且我没有取得好成绩
答案 0 :(得分:0)
由于你有一个nginx标签,也许你也使用nginx作为web服务器,如果是这样,你可能需要在那里进行一些配置:
http://symfony.com/doc/current/setup/web_server_configuration.html#nginx
您的问题和设置应在您的问题中说明。如果你可以编辑和更新,那就太好了。
答案 1 :(得分:0)
有日志文件权限问题。 Docker不支持使用默认文件系统驱动程序setfacl
。
按照symfony documentation中的说明尝试此解决方案: 更改umask,以便缓存和日志目录可以写入组或可写入世界(取决于Web服务器用户和命令行用户是否在同一组中)。为此,请将以下行放在bin / console,web / app.php和web / app_dev.php文件的开头:
umask(0000); // This will let the permissions be 0777
答案 2 :(得分:0)
解决方案是将此命令运行到项目目录中:
$ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1`