[英]“Access Denied Code 5” PHP Rename Error in Symfony2/Doctrine2
当我使用User实体登录时,我在Symfony2项目中得到了臭名昭着的Doctrine“PHP Rename Access Denied Code 5”错误:
\\app\\cache\\dev/doctrine/orm/Proxies\\__CG__AcmeDemoBundleEntityUser.php): Access is denied. (code: 5)
我将登录确定,如果我很幸运,我可以在会话被杀之前加载页面,因为此错误导致用户身份验证失败。 它只发生在这一个实体上。
我的同事,具有相同的设置和相同的项目具有相同的错误,但是对于不同的实体(并且仅针对该实体)。
这个问题之前已在此处报道,其中包含Doctrine的GitHub上的错误链接,该错误已经确认为2.5(在Doctrine ORM 2.5发行说明中确认)。
我的Symfony2项目正在运行Doctrine ORM 2.5.4但我仍然遇到同样的错误。
试图修复
在auto_generate_proxy_classes
的值从%kernel.debug%
auto_generate_proxy_classes
%kernel.debug%
更改为false
可以防止出现此问题,但这会隐藏问题而不是修复它。
有没有人设法解决这个问题?
您是否尝试将auto_generate_proxy_classes
设置为AbstractProxyFactory :: AUTOGENERATE_EVAL或AbstractProxyFactory :: AUTOGENERATE_FILE_NOT_EXISTS的基础常量值。
根据此文档部分高级配置>自动生成代理类,这应该修复开发环境中的访问被拒绝问题。
此外,您应确保您的生产配置遵循以下建议:
在生产环境中,强烈建议使用AUTOGENERATE_NEVER以获得最佳性能。 其他选项在开发环境中很有趣。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.