Symfony:属性不存在 - 500 内部服务器错误 - ReflectionException
Posted
技术标签:
【中文标题】Symfony:属性不存在 - 500 内部服务器错误 - ReflectionException【英文标题】:Symfony: Property does not exist - 500 Internal Server Error - ReflectionException 【发布时间】:2014-12-23 00:54:22 【问题描述】:我从实体中删除了$hearAboutIndustry
,现在仅在生产服务器中出现以下错误,而不是在本地和临时服务器上!知道原因或解决方案吗?
Property Tete\AdminBundle\Entity\Customer::$hearAboutIndustry does not exist
500 Internal Server Error - ReflectionException
config_prod.yml
doctrine:
orm:
metadata_cache_driver: apc
result_cache_driver: apc
query_cache_driver: apc
到目前为止我必须做些什么来解决它:
从实体中删除了 getter 和 setter。 删除了整个缓存和日志文件夹并重新创建回来,inc 777。 以防万一运行cache:clear --env=prod
在项目的所有目录/文件中搜索hearAboutIndustry
。根本没有参考。
运行doctrine:schema:update
。数据库已更新。
运行doctrine:generate:entities
。实体已更新。
应用程序/控制台原则:缓存:清除元数据
应用程序/控制台原则:缓存:清除查询
应用程序/控制台原则:缓存:清除结果
【问题讨论】:
您是否使用 APC 缓存或任何其他 Doctrine 缓存?一种判断方法是是否在 config.yml 中设置了教义.orm.metadata_cache_driver 和教义.orm.query_cache_driver 是的,我愿意。我认为这是机智的。我在 Ubuntu AWS 上。 我申请了this solution,但没有成功。 奇怪。但是,如果您使用 APC,最后一个解决方法是重新启动 Apache 或 php-FPM,具体取决于您使用的是哪一个。 啊哈!sudo apachectl graceful
成功了。谢谢你。 +1
【参考方案1】:
我们遇到了同样的问题,在我们的案例(nginx)中,重启 Nginx 并没有帮助。
但重启 memcache 是正确的解决方案:
sudo service memcached restart
【讨论】:
【参考方案2】:我遇到了类似的问题,我只是使用了学说:映射:导入,就是这样。
干杯
【讨论】:
【参考方案3】: php 应用程序/控制台原则:cache:clear-query --env=prod清除所有查询缓存条目
php 应用程序/控制台原则:cache:clear-result --env=prod清除所有结果缓存条目
php 应用程序/控制台原则:cache:clear-metadata --env=prod清除所有元数据缓存条目
php 应用程序/控制台缓存:清除 --env=prod使用 debug false 清除 prod 环境的缓存
别忘了把 --env=prod 放到你的命令中
【讨论】:
【参考方案4】:“旧但仍在发生” 如果上述解决方案均无效 尝试手动删除实体缓存文件: (例如实体客户缓存文件路径应该是这个)
projectdirectory\projectname\var\cachedev or prod\jms_serializer\Tete-AdminBundle-Entity-Customer.cache.php
【讨论】:
【参考方案5】:正如 Adam 在评论中建议的那样,如果上述所有解决方案都已尝试但没有成功,我们最好重新启动 apache。解决办法是:
sudo apachectl graceful
【讨论】:
酷,我很高兴这对你有用;)我在使用 APC 加载类时遇到了类似的问题,我花了很长时间才弄明白 我浪费了大约 6 个小时来解决这个问题 :) 现在我可以睡觉了。再次感谢您。 我遇到了一个问题,我从实体中删除了一个字段,但它一直抛出错误。我尝试手动清除缓存等等。重启 apache 解决了这个问题。谢谢你。以上是关于Symfony:属性不存在 - 500 内部服务器错误 - ReflectionException的主要内容,如果未能解决你的问题,请参考以下文章
Symfony 创建组件:sfConfigurationException 该组件不存在
Xampp 上的 Symfony 项目返回 500 个内部服务器错误
500 – 内部服务器错误。 您查找的资源存在问题,因而无法显示。