我正在学习Symfony2,非常酷的东西.但是当我想尝试访问生产环境时,我确实遇到了一些麻烦.我已经按照位于此处的Symblog教程进行了操作:http://tutorial.symblog.co.uk/
我已经清除了缓存,我访问了http://symfony.dev/我在本地运行.页面保持完全空白,此错误在日志中:
Fatal error: Uncaught exception 'Doctrine\ORM\ORMException' with message 'Unknown Entity namespace alias 'DSBlogBundle'.'
in /Applications/MAMP/htdocs/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/ORMException.php:236
Stack trace:
#0 /Applications/MAMP/htdocs/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/Configuration.php(194): Doctrine\ORM\ORMException::unknownEntityNamespace('DSBlogBundle')
#1 /Applications/MAMP/htdocs/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php(554): Doctrine\ORM\Configuration->getEntityNamespace('DSBlogBundle')
#2 /Applications/MAMP/htdocs/symfony/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php(194): Doctrine\ORM\Mapping\ClassMetadataFactory->getFqcnFromAlias('DSBlogBundle', 'Blog')
#3 /Applications/MAMP/htdocs/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(295): Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->getMetadataFor('DSBlogBundle:Bl...')
#4 /Applications/MAMP/htdocs/symfony/vendor in /Applications/MAMP/htdocs/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/ORMException.php on line 236
Run Code Online (Sandbox Code Playgroud)
我没有得到的是'Unknown Entity namespace alias 'DSBlogBundle'在开发环境中完全"已知".有谁知道我错过了什么?任何帮助深表感谢!谢谢!
Hai*_*ian 10
我能想到的几种可能性:
1)如果您的代码在开发环境中正常运行,则可能是缓存问题和/或权限问题.确保您的文件可由与您的Web服务器关联的用户/进程读取,并确保该prod用户可以写入缓存目录,以便它可以生成必要的文件.我通常做的是运行clear cache console命令AS那个用户以避免意外的缓存问题,比如这个(在Linux上):
sudo -u www-user php app/console cache:clear --env=prod
Run Code Online (Sandbox Code Playgroud)
如果您正在使用Linux进行开发,则必须以root用户或具有管理员权限的其他用户身份登录,才能以非自己的用户身份运行命令.
2)您可能在dev环境中定义了环境中不存在的配置prod.仔细检查文件app/config夹中的文件.我的第一个猜测DSBlogBundle是没有正确定义,app/AppKernel.php但我相信这是独立于环境的,所以它不能在dev中工作,而不能在prod中工作.