【问题标题】:Setting Up Symfony 2 - Cannot Load app.php Resource设置 Symfony 2 - 无法加载 app.php 资源
【发布时间】:2011-08-28 14:15:55
【问题描述】:

我在设置 Symfony2 生产环境时遇到问题。通过 app_dev.php 的开发环境可以正常工作,但是通过 app.php 的生产会导致 500 Internal Server Error,并且 Symfony 错误日志中的这条消息:

[2011-08-28 10:09:11] request.CRITICAL: Symfony\Component\Config\Exception\FileLoaderLoadException: Cannot load resource ".". (uncaught exception) at /var/www/Symfony/vendor/symfony/src/Symfony/Component/Config/Loader/Loader.php line 75 [] []

不知道如何解决这个问题,甚至不知道如何跟踪它...

【问题讨论】:

  • 我们可以查看您的生产 config.yml 文件以进行路由和常规配置吗?

标签: symfony


【解决方案1】:

当我更新 Liip/ImagineBundle 时发生在我身上。

在此捆绑包的旧版本中,您的路由中需要这样做:

_imagine:
    resource: .
    type:     imagine

在新版本中,这将被替换为:

_liip_imagine:
    resource: "@LiipImagineBundle/Resources/config/routing.yaml"

所以在我的情况下,问题是我通过 composer 更新了包,但没有更新 routing.yml。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题。尝试添加:

    资产: use_controller: true

    在 /app/config/config_prod.yml 中,然后清理缓存 (rm -fr /app/cache/*)

    【讨论】:

    • 你能解释一下这有什么帮助吗?有什么改变会导致这个问题并且必须通过添加该配置来解决?
    • 这是错误的,您不想在生产中使用资产控制器,而是需要使用 app/console assetic:dump --env prod 转储资产
    【解决方案3】:

    如果您在生产环境中遇到这些问题并且您使用资产,那么请检查您是否没有这个:

    _assetic:
        resource: .
        type:     assetic
    

    在您的配置文件中(通常仅在 config_dev.yml 中,不在生产中)...在其他情况下,请尝试使用 resource: . 检查其他路由

    【讨论】:

    • 这是在 routing_dev.yml 而不是 config_dev.yml
    【解决方案4】:

    我在将 symfony2 项目托管到支持 php5.3 的 godaddy windows 共享主机时遇到了类似的问题,并通过为 symfony2 目录提供写权限并为 symfony 项目目录创建 iis 虚拟目录来修复它。

    【讨论】:

      【解决方案5】:

      对我来说,这是因为我不确定在我的 config.yml 中添加了一个配置块并删除了它,因为我不知道它做了什么 :)

      所以我下载了一个新的 symfony2 副本,并意识到代码块默认是在新安装时出现的,所以我把它放回去,一切正常。这是我已删除的内容,我通过将其放回原处解决了问题:

      # Assetic Configuration
      assetic:
          debug:          %kernel.debug%
          use_controller: false
          bundles:        [ ]
          #java: /usr/bin/java
          filters:
              cssrewrite: ~
              #closure:
              #    jar: %kernel.root_dir%/Resources/java/compiler.jar
              #yui_css:
              #    jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar
      

      【讨论】:

        【解决方案6】:

        那么答案就在routing.yml中

        那里有一个可能被禁用的资源,并且留下了引用。

        【讨论】:

          猜你喜欢
          • 2013-06-15
          • 2016-05-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-07-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多