我们正在寻找出现以下 500 错误的情况:
File xyz.php does not exist or class "xyz" was not found in the file at () in SF_ROOT_DIR/lib/vendor/Zend/Loader.php line 107 ...
其中 xyz ==
Memcache(尝试在命令行上使用 symfony cc 时)
或者
sfDoctrineAdminGenerator(使用老式 AdminGenerator 生成的 CMS 页面时)。
我们使用 Propel,但 Loader.php 试图加载仅用于 Doctrine 的类。
目前我正在使用一个肮脏的黑客,我请求 Loader.php 检查文件是否是这两种情况中的任何一种,如果是,则简单地返回而不是尝试加载它。显然,从长远来看,这是不可接受的。
有没有人遇到过这个,你是怎么解决的?
编辑添加:
我们有:
class ProjectConfiguration extends sfProjectConfiguration
{
public function setup()
{
// for compatibility / remove and enable only the plugins you want
$this->enableAllPluginsExcept(array('sfDoctrinePlugin'));
}
}
我们在顶级配置目录中有一个 propel.ini 文件。这只是在过去四个星期左右才开始,我们已经有一年多的稳定构建了。我很确定教义完全被禁用了。