切換到 PHP 7 之後,網站的速度大幅提升,不過通常的擴展可能某一個就還沒有支持 PHP7.
Memcached的
比如說我現在使用了最新的 Ubuntu 16.04,雖然內置了 PHP 7 源,但 memcached 就還沒有,不過好在,它已經支持了 PHP 7 ,只是沒有源而已,我們手動編譯它。
要安裝 memcached,需要先安裝依賴庫 libmemcached
從這裡找到最新的 libmemcached 源碼包,然後下載。
1 2 3 4 5 6 |
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz tar -zxf libmemcached-1.0.18.tar.gz cd libmemcached-1.0.18/ ./configure make make install |
安裝好依賴庫之後,我們來安裝 memcached :
從 github 克隆 memcached 後,需要手動切換到 php7 分支,不然會提示 致命 錯誤: 分機/標準/php_smart_str.H: 沒有 這樣 文件 要么 目錄 錯誤。
1 2 3 4 5 6 7 |
git clone https://github.com/php-memcached-dev/php-memcached.git cd php-memcached/ git checkout php7 phpize ./configure --disable-memcached-sasl make make install |
Redis的
同樣的,Redis其實也已經有了 PHP 7 版本,我們從 github 上獲取項目克隆,然後手動切換到 php7 分支即可:
1 2 3 4 5 6 7 |
git clone https://github.com/phpredis/phpredis.git cd phpredis/ git checkout php7 phpize ./configure make make install |
啟動擴展
光安裝了還不夠,我們還需要編輯PHP的配置文件來使擴展被加載才行, 我們 /等等/PHP/7.0/FPM/PHP.此 ,在配置文件中添加如下語句:
1 2 |
extension=memcached.so extension=redis.so |
最後使用命令來重啟 PHP 服務: 服務 php7.0-FPM 重新開始
WordPress的
對於 WordPress 來說,這裡我們需要單獨下載插件:https://github.com/tollmanz/wordpress-pecl-memcached-object-cache
由於wp官方插件庫裡的緩存插件只支持 內存緩存,我們只能自己下載 對象cache.php 文件到博客的 WP-內容 目錄中了。
如果哪天你不再想用 memcached,就把這個文件刪除。
另外,如果你的vps跑著不止一個 WordPress ,那如果你想給它們都開啟緩存,你還得編輯 WP-配置.PHP 文件,找到 確定(“WP_DEBUG”, 假); 這一行,在它下邊起新的一行然後輸入如下內容:
1 2 |
define('WP_CACHE_KEY_SALT', md5(DB_NAME . logcg)); //其中 logcg 改为你博客的名字,没有特定要求但必须唯一不能重复。 |
這樣,每一個 WordPress 程序才能訪問它獨自的 memcached的 緩存。
另外,如果你使用的是 WP超高速緩存 緩存插件,這時候你應該可以去它的高級設置裡找到對 memcached 的支持選項了:)
本文由 落格博客 原創撰寫:落格博客 » Ubuntu的 16.04 為 PHP7 添加 memcached 以及 redis 擴展
轉載請保留出處和原文鏈接:https://www.logcg.com/archives/1747.html