【发布时间】:2013-03-06 10:10:53
【问题描述】:
我对 symfony2 和教义2 比较陌生,对某些事情感到困惑......
在dev 环境中访问某个页面时,我按预期获得了该页面的内容,但是当我尝试使用prod 环境打开完全相同的页面时,我看到的只是“内部服务器错误”。
顺便说一句,prod 中的其他页面工作正常...
查看php错误日志,我看到了
PHP 警告:需要([路径]/app/cache/prod/doctrine/orm/Proxies/_CG_SitesMyBundleEntity[myEntity].php):无法打开流:没有这样的文件或第 92 行 [path]\vendor\doctrine\orm\lib\Doctrine\ORM\Proxy\ProxyFactory.php 中的目录
查看相关目录,确实没有提到的代理文件,但是其他的。
我尝试完全清除缓存目录无济于事,同样适用于重新生成实体。
也许相关:我最近升级了 symfony 2.2 及其配套的学说版本。
谁能指出我为什么没有自动创建特定代理(当其他代理是)以及我可以做些什么来解决这个问题?
[编辑]
即使在运行php app/console cache:warmup --env=prod 时抛出的反射错误与缺少代理文件的实体无关,解决反射错误也解决了“内部服务器错误”
【问题讨论】:
-
也许你应该尝试 php app/console cache:warmup 并检查它是否给出任何错误
-
结果为@987654325@。使用
--env=prod运行命令会导致反射错误,但该错误与实体无关。将调查反射错误。 -
我也收到此错误:[ReflectionException] Class Name\Bundle\Entity\Name\Bundle\Entity\Order 不存在,应该是 Class Name\Bundle\Entity\Order 不存在。有人对此有任何更新吗?
标签: symfony doctrine-orm symfony-2.2