2013-02-08 56 views
10

我在Windows 7中安裝了memcached二進制文件並將其作爲服務器啓動。如何在Windows for PHP中安裝和使用memcached?

當我鍵入wmic進程得到描述,exetuablepath | findstr memcached.exe我得到的迴應:命令行上的memcached.exe c:\ memcached \ memcached.exe。

當我嘗試運行在php.net示例代碼中,我得到我的瀏覽器:

致命錯誤:類「內存緩存」用C未找到:\的DocumentRoot \第3行框架\的index.php調用堆棧:0.0010 335928 1. {main}()C:\ DocumentRoot \ Framework \ index.php:0

那麼,我做錯了什麼?我使用memcache.dll,因爲memcached.dll不存在Windows我相信?

+2

希望你已經啓用了擴展! :) – Venu 2013-02-08 17:17:02

+0

我有..還是沒有運氣。我應該下載哪個dll? – 2013-02-08 17:17:30

+0

你確定擴展程序已加載?檢查'phpinfo()'並查看它是否被列出。 – 2013-02-08 17:18:35

回答

4

這是爲未來的遊客!

  1. 檢查phpinfo()並查看它是否已列出。
  2. 如果不是,請檢查php.ini中是否啓用了擴展功能,然後檢查Apache錯誤日誌是否爲 錯誤消息! dll應該遵循與php 相同的編譯器。 (VC9或VC6)順便說一句,memcache.dll優良

你可以得到PHP擴展「內存緩存」,以使用memcached用PHP在這裏的窗戶http://downloads.php.net/pierre/

Memcached是服務器守護程序,你可以得到它這裏的窗口http://splinedancer.com/memcached-win32/

+12

所有鏈接似乎被打破:| – Gigala 2015-07-23 06:43:25

2

基於評論,我假設你沒有下載和安裝memcached,但已經成功安裝了PHP的memcached模塊。基本上,你已經拿到了車鑰匙,但沒有車。

memcached是爲Linux構建的,但它已被其他人移植到Windows。本教程很舊,但它可能是你要找的東西:http://www.codeforest.net/how-to-install-memcached-on-windows-machine

12

給任何遇到與在Windows上運行memcached工作有關的問題的說明。

  • 對於初學者確保您有memcached的DLL的正確版本,它是可訪問的。在http://windows.php.net/downloads/pecl/releases/memcache/3.0.8/有很多選項可以選擇錯誤版本的memcached!
  • 如果您正在運行PHP 5.5,您還需要php5.dll。你可以得到這個here
  • 你可能需要編輯你的環境路徑設置,所以這個DLL可以找到。轉到我的電腦 - >屬性 - >高級,然後單擊環境變量查看/編輯路徑。如果你編輯這個,你需要重新啓動計算機。
  • 確保安裝了memcached服務器。 Ctrl + Alt + Del並檢查你的服務列表中是否存在memcached
  • 如果不是,你需要*從Cmd提示符下安裝以管理員身份運行(從開始菜單中選擇附件,單擊命令提示符並單擊選擇以管理員身份運行) c:\ pathtomemcached \ memcached。exe -d安裝
  • 跟隨此與c:\ pathtomemcached \ memcached.exe -d開始或網絡啓動「memcached服務器」。在我安裝前不工作
  • 同樣我無法啓動從任務管理器
  • 這是很方便的,能夠在較低的水平,從而enable telnet與memcached的身邊打球,如果需要的服務選項卡memcached的,並從命令提示符鍵入telnet。現在打開端口11211並嘗試使用memcached
  • 能夠對memcached中正在發生的事情進行標記也很有用。 phpMemCacheAdmin是迄今爲止最好的工具
+0

我認爲這個:**「這是非常容易選擇錯誤的」**可以粗體在這個答案。由於選擇了錯誤的版本,我整天都失去了。我還想補充說,匹配** 86x/64x ** WAMP和memcache.dll版本以及WAMP編譯VC6/VC9並匹配** VC6/VC9 **版本的memcache.dll非常重要。我有WAMP VC9,我使用的是memcache.dll VC6,這就是爲什麼它不起作用。 – Rob 2014-05-01 20:12:35

+0

@Rob - 好點!我編輯了答案並突出了答案的重要部分。 – DroidOS 2014-05-02 06:42:13

+0

爲了確定是否使用線程安全或非線程安全,這幫助了我:http://stackoverflow.com/a/5800346/470749 – Ryan 2017-04-04 00:10:33