PHP Redis+Wordpress

Redis

(1) 安裝 redis server

sudo apt install redis-server

(2) 查看服務是否已在監聽

sudo ss -tlnp | grep redis

(3) 設定檔,同時允許遠端連入 Redis 伺服器

sudo nano /etc/redis/redis.conf

bind 0.0.0.0 ::1

(4) 檢查設定檔是否正確和重啟

redis-server /etc/redis/redis.conf
sudo systemctl restart redis

(5) 安裝

sudo apt install php-redis

(6) 編輯 php.ini 文件,新增一列來啟用 Memcached

nano /etc/php/8.1/fpm/php.ini

; Directory in which the loadable extensions (modules) reside.

; https://php.net/extension-dir

;extension_dir = "./"

; On windows:

;extension_dir = "ext"


extension=redis.so

(7) 連線過去 php.info 可以看到 redis 已經啟用

(8) 重新啟動 php

sudo systemctl restart php8.1-fpm


(9) 到 Wordpress 中安裝 redis 外掛程式,即可快取


phpRedisAdmin

(1) 下載

git clone https://github.com/ErikDubbelboer/phpRedisAdmin.git

(2) 移動到 /var/www/

mv phpRedisAdmin/ /var/www

(3) 設定權限

sudo chown -R www-data:www-data /var/www/phpRedisAdmin/
sudo chmod -R 755 /var/www/phpRedisAdmin

(4) 複製 phpRedisAdmin 的設定檔範本

cp /var/www/phpRedisAdmin/includes/config.sample.inc.php /var/www/phpRedisAdmin/includes/config.inc.php

(5) 設定站台,同時連結過去

sudo nano /etc/nginx/sites-available/phpredisadmin.conf

server {

    listen 80;

    server_name phpredisadmin;


    root /var/www/phpRedisAdmin/;

    index index.php;


    location / {

        try_files $uri $uri/ /index.php$is_args$args;

    }


    location ~ \.php$ {

        include snippets/fastcgi-php.conf;

        fastcgi_pass unix:/run/php/php8.1-fpm.sock;

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        include fastcgi_params;

    }

}


sudo ln -s /etc/nginx/sites-available/phpredisadmin.conf /etc/nginx/sites-enabled/

(7) 過程中發現少了一些元件,像是 Composer 包,所以解決方法如下

cd /var/www/phpRedisAdmin/
composer install
sudo systemctl reload nginx
sudo systemctl reload php-fpm

(8) 重新讀取 Nginx

sudo systemctl reload nginx

(9) 前往 phpredisadmin

http://phpredisadmin/









參考網站

https://magiclen.org/ubuntu-server-redis-php/

https://themeisle.com/blog/wordpress-redis-cache/#gref


OPCache 是一個 PHP 的字節碼快取器,用於快取 PHP 腳本的編譯結果,以提高 PHP 程式的效能。 而 memcached 是一個分散式記憶體物件快取系統,專門用於快取數據,通常用作資料庫查詢結果、API 回應等的快取。雖然 Redis 也可以用作緩存,但它的功能遠不止於此,它更像是一個多用途的資料儲存和處理工具。

留言

這個網誌中的熱門文章

黑暗靈魂3[所有重要物品的取得方式]

黑暗靈魂3[所有姿勢取得方式]

MySQL Replication