【问题标题】:Symfony: Property does not exist - 500 Internal Server Error - ReflectionExceptionSymfony:属性不存在 - 500 内部服务器错误 - 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

标签: symfony doctrine-orm


【解决方案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\cache{dev or prod}\jms_serializer\Tete-AdminBundle-Entity-Customer.cache.php

        【讨论】:

          【解决方案5】:

          正如 Adam 在评论中建议的那样,如果上述所有解决方案都已尝试但没有成功,我们最好重新启动 apache。解决办法是:

          sudo apachectl graceful

          【讨论】:

          • 酷,我很高兴这对你有用;)我在使用 APC 加载类时遇到了类似的问题,我花了很长时间才弄明白
          • 我浪费了大约 6 个小时来解决这个问题 :) 现在我可以睡觉了。再次感谢您。
          • 我遇到了一个问题,我从实体中删除了一个字段,但它一直抛出错误。我尝试手动清除缓存等等。重启 apache 解决了这个问题。谢谢你。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-04-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-01-17
          相关资源
          最近更新 更多