首頁  >  文章  >  後端開發  >  PHP+Redis 不注意這些細節簡直就是跳入一個出不來的坑(windows下安裝)

PHP+Redis 不注意這些細節簡直就是跳入一個出不來的坑(windows下安裝)

PHP中文网
PHP中文网原創
2017-06-28 08:59:031285瀏覽

開門見山~~~~~~~

首先要做的一件事情!確認版本!一定要確認你的php版本!

phpinfo  看一下你目前的版本是多少,目前我的版本是

在標紅的幾個區域可以看到,vc11 TS x86 三處關鍵字樣:
vc11: 意為該版本php為vc11函式庫寫;
# TS:意為  線程安全  NTS  非線程安全 (當時就在這裡,卡了我一下午,就是因為下載的東西沒有註意這個!!!!!);
有關於線程安全非線程安全 的區別(我從網路上找的,要了解更多的話,傳送門)

從2000年10月20日發布的第一個Windows版的PHP3.0.17開始的都是線程安全的版本,這是由於與Linux/Unix系統是採用多進程的工作方式不同的是Windows系統是採用多執行緒的工作方式。如果在IIS下以CGI方式運行PHP會非常慢,這是由於CGI模式是建立在多進程的基礎之上的,而不是多執行緒。

一般我們會把PHP配置成以ISAPI的方式來運行,ISAPI是多執行緒的方式,這樣就快多了。但存在一個問題,許多常用的PHP擴充是以Linux/Unix的多進程思想來開發的,這些擴充在ISAPI的方式運作時就會出錯搞垮IIS。因此在IIS下CGI模式才是PHP運作最安全的方式,但CGI模式對於每個HTTP請求都需要重新載入和卸載整個PHP環境,其消耗是巨大的。

為了兼顧IIS下PHP的效率與安全,微軟給了FastCGI的解決方案。 FastCGI可以讓PHP的進程重複利用而不是每一個新的請求就重開一個進程。同時FastCGI也可以允許幾個進程同時執行。這樣既解決了CGI進程模式消耗太大的問題,又利用了CGI進程模式不存在執行緒安全性問題的優勢。

因此,如果是使用ISAPI的方式來運行PHP就必須用Thread Safe(線程安全)的版本;而用FastCGI模式運行PHP的話就沒有必要用線程安全檢查了,用None Thread Safe(NTS,非線程安全)的版本能夠更好的提高效率。

Architecture x86: 意為PHP架構為32位元 (有關於一些php架構、核心的一些簡單介紹看這裡吧傳送門

#準備好以上的工作,就讓我們把redis 的擴充功能下回來吧   因為我的php版本是 vc11 TS 的 所以我下的線程安全版的

下載回php_igbinary-1.2.1-5.5-ts-vc11-x86.zip 擴充功能


下載回php_redis-2.2.5-5.5-ts-vc11-x86.zip 擴充功能

下載回redis-2.4.5-win32-win64.zip  (這個傳送門裡的安裝包解壓縮後有兩個版本,用和系統位數相同的版本就好了,注意是系統位元數,不是php架構位元數

 

至此準備工作完成了!下面進入安裝步驟

第一步,將Redis安裝包解壓縮到任何資料夾中·你就把他當成個軟體就行· (我這裡是安裝到了F碟)

開啟cmd介面鍵入指令

不要關閉這個窗口,現在這個cmd窗口已成為redis的服務端

接著在開啟一個dos視窗 鍵入指令

#指令解析:

redis-cli.exe -h 127.0.0.1 -p 6379 

  redis-cli.exe 啟動 redis客戶端

  -h 主機位址

  -p redis連接埠號碼(預設6379)

 

接下來測試一下

指令解析

set 鍵名 值

get 鍵名  會輸出該鍵名所對應值

 

恩,redis 安裝好了,下面讓我們安裝一下php redis的擴充功能

解壓縮我們一開始下回來的兩個文件,將裡面的 .dll 檔案複製到php啟動程式下ext資料夾內

#我的是在這裡  我用的是整合的wamp 環境 對應自己的php安裝位置,放到這個擴充目錄下就好了

 

#

After placing it, open php.ini and add it (any location, I put it at the end of the document)

;php_redis
extension=php_igbinary.dll
extension=php_redis.dll

Restart all wamp services and print phpinfo again

Seeing this means that the redis extension has been mounted successfully!

Hope this document can help you!

以上是PHP+Redis 不注意這些細節簡直就是跳入一個出不來的坑(windows下安裝)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn