【问题标题】:Symfony2 "No route found" when deployingSymfony2 部署时“找不到路由”
【发布时间】:2013-01-23 14:52:47
【问题描述】:

我需要在与 cPanel 的共享主机上部署一个 symfony2 应用程序。我已经设法上传它,为 app/cache 和 app/logs 目录设置 umask(根据文档,通过在所需文件中添加 umask(0000) 行)但我有一个奇怪的问题:

每当我使用 ftp 上传新文件时,它似乎都会随机停止工作。即使相同的文件在 localhost 上工作正常,它总是吐出“找不到 GET /(whatever-link)的路由”。清除缓存文件夹没有任何作用。

然后,这是奇怪的部分 - 我相信我已经注意到在几个小时不活动后它会再次开始工作,而文件没有任何更改。

这让我发疯了,我错过了什么?

【问题讨论】:

  • 当你说你清除缓存文件夹时,你如何进行?
  • 这是一个愚蠢但必要的问题:您是否每次都更新您的路由文件?
  • 我通过使用 cPanel 文件管理器手动删除 app/cache 文件夹中的所有内容来清除缓存。而对于路由,我使用注解,所以我不需要更新 routing.yml(即便如此,我并不总是更改路由)

标签: php symfony permissions ftp cpanel


【解决方案1】:

我已经解决了这个问题,将在这里提供解决方案,以帮助未来的一些不幸的访客:

托管服务提供商启用了旧版本的 eAccelerator - 在缓存 php 文件时将 cmets 从 php 文件中剥离出来。不用说,这对我的整个应用程序造成了严重破坏。

我通过删除所有注释来解决这个问题,而是对所有内容使用 yaml,包括教义映射。

在此处阅读有关此问题的更多信息:http://wildlyinaccurate.com/eaccelerator-and-doctrine-2/

【讨论】:

  • 买一个 vps ,你真的可以买到便宜的,在那里你可以安装你真正需要的东西,而且只有那个,gandi 提供非常便宜的 vps,还有很多其他便宜的,无论如何你至少应该能够在服务器上禁用 eAccelerator。
  • 感谢您的建议,我会考虑未来的VPS,但这次客户已经有一个托管服务提供商。然而,我发现我非常喜欢 YAML 配置文件提供的关注点分离,而不是注释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-29
  • 1970-01-01
  • 2015-08-15
  • 2016-03-27
  • 2015-11-02
  • 1970-01-01
相关资源
最近更新 更多