【问题标题】:Class 'Memcached' not found-(php 5.4.9,windows 7)找不到类“Memcached”-(php 5.4.9,windows 7)
【发布时间】:2015-06-12 09:31:09
【问题描述】:

我在我的 Windows 7(64 位机器)上安装了 php-5.4.9(32 位)并将其配置为作为 php-fpm 进程运行。我的 Web 应用程序需要 memcached,因此在我的 php\ext 文件夹中安装了 memcached 守护程序和必要的 dll 文件。但是当我尝试运行我的 web 应用程序文件夹时,我总是得到 Class Memcached not found 错误。我尝试了谷歌搜索,还提到了一些 stackoverflow,但找不到我的问题的解决方案。

有人可以帮我理解我做错了什么吗?


【问题讨论】:

  • 在您的 Windows 机器上,您是否将 php 安装为 XAMPP 或 WAMP 或任何捆绑的网络服务器软件?您有多个引用 memcached 的 php 安装。既然你在你的 phpinfo() 中有 memcached,那么它肯定已经加载了,你不需要重新启动 apache。
  • 我看到你的问题被标记为memcached 并且在标题中它说 Class 'Memcached' not found-(php 5.4.9,windows 7) 但是你说你得到 Class Memcache not found 错误,从phpinfo() 我们可以看到你启用了memcache。那么你真正使用的是哪一个?
  • @mrun:对不起,我的错字。我已经更新了问题
  • @unixmiah:我安装了一个 XAMPP 服务器,我没有使用捆绑的 Apache Web 服务器。我已经单独安装了 nginx 并使用快速 cgi 连接到 php-fpm。
  • @Tojo Chacko:现在不是很明显吗?您缺少 memcached 扩展 :-) 请注意有 memcachememcached 扩展。更多信息here

标签: windows memcached php php-5.4


【解决方案1】:

memcached PECL 扩展建立在libmemcached 之上,它具有libevent 要求。 memcache PECL 扩展是基于旧的 memcache 规范构建的,但不是基于任何库构建的。

memcache 可以在任何地方使用,但memcached 只能在 Linux/Mac OSX 上构建。

您可能能够构建memcached PECL 扩展,但目前不存在。

如果这是为了开发,也许像 Vagrant 这样的东西可以给自己一个 Linux 虚拟服务器。如果您以后要使用 Linux 服务器,这将允许您运行您的开发。

【讨论】:

  • 是的,我已经知道了。我的 localbox 上不能有单独的 Linux VM 来运行我的 Web 应用程序。这就是我想在 Windows 上设置的原因。现在因为我别无选择,我没有在我的 localbox 上使用 Memcached。
猜你喜欢
  • 1970-01-01
  • 2017-10-05
  • 2015-06-29
  • 2011-02-09
  • 2015-03-15
  • 1970-01-01
  • 2012-04-03
  • 2018-09-16
相关资源
最近更新 更多