首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony 1.4 / Doctrine 1.2无法识别加载了APC扩展

Symfony 1.4 / Doctrine 1.2无法识别加载了APC扩展
EN

Stack Overflow用户
提问于 2012-06-28 05:40:41
回答 1查看 1.6K关注 0票数 0

我正在尝试配置APC来使用我的Symfony 1.4/Doctrine1.2网站。我目前正在使用WAMP 2.1,我成功地安装了APC扩展。当我执行phpinfo()时,我得到一个说明,显示APC已启用。

代码语言:javascript
复制
apc
APC Support enabled
Version 3.1.6
APC Debugging   Disabled
MMAP Support    Disabled
Locking type    File Locks
Revision    $Revision: 303642 $
Build Date  Dec 1 2010 21:08:06

Directive   Local Value Master Value
apc.cache_by_default    On  On
apc.canonicalize    On  On
apc.coredump_unmap  Off Off
apc.enable_cli  Off Off
apc.enabled On  On
apc.file_md5    Off Off
apc.file_update_protection  2   2
apc.filters no value    no value
apc.gc_ttl  3600    3600
apc.include_once_override   Off Off
apc.lazy_classes    Off Off
apc.lazy_functions  Off Off
apc.max_file_size   10M 10M
apc.num_files_hint  1000    1000
apc.preload_path    no value    no value
apc.report_autofilter   Off Off
apc.rfc1867 Off Off
apc.rfc1867_freq    0   0
apc.rfc1867_name    APC_UPLOAD_PROGRESS APC_UPLOAD_PROGRESS
apc.rfc1867_prefix  upload_ upload_
apc.rfc1867_ttl 3600    3600
apc.shm_segments    1   1
apc.shm_size    64M 64M
apc.slam_defense    On  On
apc.stat    On  On
apc.stat_ctime  Off Off
apc.ttl 0   0
apc.use_request_time    On  On
apc.user_entries_hint   4096    4096
apc.user_ttl    0   0
apc.write_lock  On  On

但是,当我试图将查询缓存设置为在symfony ProjectConfiguration.class中使用APC时,出现了一个错误,说明APC扩展没有加载:

代码语言:javascript
复制
  public function configureDoctrine(Doctrine_Manager $manager)
  {
      $manager->setAttribute(Doctrine_Core::ATTR_QUERY_CLASS, 'Doctrine_Query_Extra');
      $manager->setAttribute(Doctrine_Core::ATTR_QUERY_CACHE, new Doctrine_Cache_Apc());  //use APC to query cache
  }

下面是在运行一个明确的缓存(php symfony Cc)时遇到的错误:

致命错误:默认异常'Doctrine_Cache_Exception‘与消息’apc扩展必须加载使用此后端!‘在C中:.\lib\vend or\symfony-1.4.14\lib\plugins\sfDoctrinePlugin\lib\vendor\doctrine\Doctrine\Cach e\Apc.php:44

我已经搜索了所有的地方,但我似乎搞不清楚。我重新开始WAMP,但没有结果。我想这可能是我下载的APC扩展的一个问题。我读到我必须使用WAMPSERVER2.1的VC6编译版本,所以我这样做了。我发现了一个名为"php_apc_316_php53_vc6.dll“的二进制文件。我可以看到它是在phpinfo()中启用的,这意味着它已经正确安装了,对吗?在ProjectConfiguration.class中添加该行之前,我是否遗漏了一些symfony配置?顺便说一句,当我尝试使用memcache作为查询缓存时,即使我的memcache服务器安装和运行正常,我也有同样的错误,这让我相信我错过了某种Symfony/Doctrine配置步骤。

任何帮助都将不胜感激!谢谢!弗兰克

EN

回答 1

Stack Overflow用户

发布于 2012-06-28 18:08:24

弄明白了。结果发现这是个简单的解决办法。我在CLI中使用的php与我安装APC的php版本相关联。我的wampserver上有两个版本的PHP安装程序。Windows 7中的path环境变量设置为错误的php版本目录。所以当我运行"php symfony cc“时,它使用的是错误的php版本。

信用在这里:93957

希望这能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11238637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档