• Webmaster Tools
  • Diễn Đàn Hỏi Đáp
  • Profile
  • Ủng hộ
  • DNS Check
  • CheckIP
  • Liên Hệ
Đỗ Trung Quân
  • HƯỚNG DẪN
  • LINUX
    • Linux Tricks
    • Distro Linux
      • CentOS/RedHat
      • CloudLinux
      • Ubuntu/Debian
      • AlmaLinux
    • WebServer
      • NGINX
      • Apache
      • LiteSpeed
    • Virtualization
    • Monitoring Tool
      • Zabbix
    • DevOPS
      • Ansible
      • Docker
      • Jenkins
      • AWS
    • Mail Server
    • VPN
  • CONTROL PANEL
    • cPanel
    • DirectAdmin
    • aaPanel
    • FastPanel
    • CyberPanel
    • Easypanel
    • VestaCP
    • CloudPanel
    • HestiaCP
    • Plesk
    • Script VPS
  • DNS
    • Domain
  • CMS
    • WordPress
    • Laravel
  • SECURITY
    • SSL
    • Firewall
  • DỊCH VỤHOT
  • KHUYẾN MÃI
  • WEB MẪUHOT

Cấu hình NGINX FastCGI Cache trên AAPANEL

by ĐỖ TRUNG QUÂN 19/08/2021
Tác giả: ĐỖ TRUNG QUÂN Date: 19/08/2021Last Update 31/08/2022 11 comments 2,2K lượt xem
Dịch vụ xử lý mã độc WordPress
WEB MẪU WORDPRESS
Share FacebookTwitterPinterestTelegramEmail
2,2K

NỘI DUNG

  • Bước 1: Tạo thư mục cache
  • Bước 2: Cấu hình vào file nginx.conf
  • Bước 3: Cấu hình fastcgi cache vhost domain
  • Bước 4: Cài đặt Plugin

Nginx FastCGI Cache là gì?


Nginx được cấu hình để chuyển yêu cầu PHP sang PHP-FPM vì bản thân Nginx không thể xử lý mã PHP. Hãy cùng tìm hiểu cách mà LEMP hoạt động.

  1. Các trình duyệt web gửi yêu cầu HTTP đến Nginx.
  2. Nếu Nginx tìm thấy mã PHP, nó sẽ chuyển yêu cầu tới PHP-FPM để xử lý mã PHP.
  3. Nếu cần, PHP-FPM sẽ truy vấn cơ sở dữ liệu MySQL/MariaDB để lấy những gì nó cần.
  4. PHP-FPM tạo ra một trang HTML tĩnh, sau đó trả lại cho Nginx.
  5. Cuối cùng, Nginx gửi trang HTML tĩnh tới trình duyệt web.

Nginx hoạt động cực nhanh khi phục vụ các trang HTML tĩnh. Thay vì chuyển yêu cầu trang động tới PHP-FPM, Nginx có thể lưu trữ trang HTML đã tạo để lần sau nó có thể gửi các trang được lưu trong bộ nhớ cache tới trình duyệt web.

  • Điều này có thể cải thiện đáng kể thời gian phản hồi của máy chủ và giảm tải cho PHP-FPM và MySQL/MariaDB.
  • Nó cũng cho phép Nginx phục vụ các trang web từ bộ đệm khi máy chủ cơ sở dữ liệu PHP-FPM gặp vấn đề (MySQL/MariaDB thường sẽ không hoạt động khi máy chủ Linux của bạn hết dung lượng).

FastCGI là giao thức giữa Nginx và PHP-FPM nên cache được gọi là FastCGI Cache.FastCGI là giao thức giữa Nginx và PHP-FPM nên cache được gọi là FastCGI Cache.

nginx fastcgi cache

Bước 1: Tạo thư mục cache

Đầu tiên bạn hãy tạo một thư mục để lưu trữ các file cache. Mình sẽ tạo trong /var/run

mkdir /var/run/website_1

Bước 2: Cấu hình vào file nginx.conf

Mình sẽ cấu hình trực tiếp vào file nginx.conf. Bạn hãy SSH vào bên trong server và mở file nginx.conf với lệnh sau.

vi /www/server/nginx/conf/nginx.conf

Lưu ý: Nếu bạn cấu hình cho nhiều web bạn hãy tạo thêm 1 dòng fastcgi_cache_path với đường dẫn mới và thay đổi keys_zone

#FastCGI-Cache
fastcgi_cache_key "$scheme$request_method$host$request_uri";
fastcgi_cache_path /var/run/website_1 levels=1:2 keys_zone=website_1:100m inactive=7d;
#fastcgi_cache_path /var/run/website_2 levels=1:2 keys_zone=website_2:100m inactive=60m;
fastcgi_cache_use_stale error timeout invalid_header http_500;
fastcgi_ignore_headers Cache-Control Expires Set-Cookie;
#FastCGI-Cache
Screenshot 2021 08 20 at 19.17.08

Bước 3: Cấu hình fastcgi cache vhost domain

Tiếp theo cũng ở file này bạn thêm các đoạn mã cấu hình sau ở dưới #SSL-END .

Screenshot 2021 08 19 at 11.58.44

Bên dưới là toàn bộ file cấu hình của mình, bạn hãy copy và dán vào sau đó chỉnh sửa lại thêm một chút thông tin về địa chỉ IP.

Lưu ý: File cấu hình bên dưới sử dụng PHP 7.4. Nếu bạn sử dụng PHP khác bạn có thể thay đổi PHP ở dòng fastcgi_pass unix:/tmp/php-cgi-74.sock;

#FastCGI-Cache
set $skip_cache 0;
        if ($request_method = POST) {
            set $skip_cache 1;
        }   
        if ($query_string != "") {
            set $skip_cache 1;
        }   
        if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") {
            set $skip_cache 1;
        }   
       if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
            set $skip_cache 1;
        }
       location ~ [^/]\.php(/|$)
            {
                try_files $uri =404;
                fastcgi_pass unix:/tmp/php-cgi-74.sock;
                fastcgi_index index.php;
                include fastcgi.conf;  
                add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
                fastcgi_cache_bypass $skip_cache;
                fastcgi_no_cache $skip_cache;
                add_header X-Cache "$upstream_cache_status From $host";
                fastcgi_cache website_1;
                add_header Cache-Control  max-age=0;
                add_header Nginx-Cache "$upstream_cache_status";
                add_header Last-Modified $date_gmt;
                add_header X-Frame-Options SAMEORIGIN;
                add_header X-Content-Type-Options nosniff;
                add_header X-XSS-Protection "1; mode=block";
                etag  on;
                fastcgi_cache_valid 200 301 302 1d;
        }


        location ~ /purge(/.*) {
            allow 127.0.0.1;
            allow "change_to_your_server_ip";
            deny all;
            fastcgi_cache_purge website_1 "$scheme$request_method$host$1";
        }
#FastCGI-Cache

Ở dòng allow "change_to_your_server_ip"; bạn thay nhập vào IP của máy chủ VPS bạn vào để khả dụng.

Screenshot 2021 08 19 at 11.59.31

Khi cấu hình đã xong. Bạn cần làm một bước quan trọng nữa, bạn mở file cấu wp-config.php của web. Và dán vào đường dẫn đến thư mục lưu cache đã tạo ở Bước 1.

define('RT_WP_NGINX_HELPER_CACHE_PATH', '/var/run/website_1');
Screenshot 2021 08 20 at 19.45.15

Bước 4: Cài đặt Plugin

Và đây là bước cuối cùng, bạn hãy cài đặt Plugin Plugin Nginx Helper để làm môi trường kết nối.

  • Tải Plugin Nginx Helper tại đây
  • Hướng dẫn cài đặt Plugin trên WordPress
Screenshot 2021 08 19 at 12.05.12

Screenshot 2021 08 19 at 12.21.14

Sau khi cấu hình hoàn tất, bạn có thể kiểm tra trực tiếp ở cửa sổ SSH bằng lệnh currl -I https://my-domain

Screenshot 2021 08 19 at 12.08.44

Như vậy đã hoàn tất các bước cấu hình. Với site thứ 2 bạn chỉ cần làm từ bước 3 là được.

Qua bài viết này mình đã hướng dẫn các bạn cách cài đặt Nginx FastCGI Cache giúp giảm tải máy chủ và giúp website của bạn load nhanh hơn. Chúc các bạn thực hiện thành công.

5/5 - (1 bình chọn)
aapanelNGINX FastCGI Cache

Tham gia nhóm hỗ trợ WordPress

Tham gia nhóm Hỗ trợ Server - Hosting & WordPress để cùng nhau hỏi đáp và hỗ trợ các vấn đề về WordPress, tối ưu máy chủ/server.

Tham gia ngay
ĐỖ TRUNG QUÂN

Mình tên là Đỗ Trung Quân, hiện đang công tác tại AZDIGI với vị trí là SysAdmin. Mình đam mê viết Blog. Vì viết Blog giúp mình trau dồi được nhiều kỹ năng. Học hỏi thêm nhiều kiến thức mới, từ đó mình có thể chia sẻ đến các bạn các bài viết tài liệu bổ ích hơn. Hiện tại mình là admin của Blog DOTRUNGQUAN.INFO - CaiSSL.COM - QuantriVPS.COM. Mới đây mình có tạo ra nhóm Hỗ trợ Server - Hosting & WordPress | Hỗ Trợ Xử Lý Mã Độc WordPress với mục đích gây dựng một cộng đồng nhỏ để mọi người trao đổi kinh nghiệm, kiến thức quản trị VPS. Các thủ thuật, mẹo vặt khi sử dụng VPS. Rất mong nhận được sự ủng hộ của các bạn.

BÀI VIẾT LIÊN QUAN

Hướng dẫn cài đặt UniTime với Docker trên...

19/03/2025

Hướng dẫn cài đặt n8n trên aaPanel

28/02/2025

Hướng dẫn xử lý mysql-bin trên aaPanel

09/09/2024

Thiết Lập Website Chạy Bằng IP Với SSL:...

03/06/2024

Sửa lỗi cài đặt MariaDB trên AAPANEL

02/06/2024

Hướng dẫn backup dữ liệu trên AAPANEL

05/10/2023

Danh sách ControlPanel quản lý VPS miễn phí...

28/07/2023

Sửa lỗi AttributeError: module ‘lib’ has no attribute...

08/05/2023

Hướng dẫn cài đặt ImunifyAV trên AAPANEL

06/05/2023

Cách cài đặt Brotli trên AAPanel để tăng...

24/02/2023
Author Box
Author Image

ĐỖ TRUNG QUÂN

Chuyên viên quản trị hệ thống.

Tư vấn & triển khai dịch vụ

VPS | Hosting | SSL | Mailserver | Website | Sửa lỗi WordPress

Bài viết của tác giả

Hosting/VPS khuyên dùng

Phổ Biến

  • Hướng dẫn tạo SSH Key trên MAC OS

  • Hướng dẫn sử dụng SSH Key

  • Hướng dẫn cài đặt v2board trên AAPANEL

  • Vấn đề IP Public liên tục bị thay đổi vì sao và cách khắc phục

  • Khắc phục lỗi không hiện hình ảnh và mô tả khi share link lên Facebook

  • Hướng dẫn cài đặt MTProxy để truy cập Telegram

BẠN BÈ & ĐỐI TÁC

Thạch Phạm | CỔ Ý CONCEPT | Trương Quốc Cường | Đàm Trung Kiên | Web An Tâm | Phong Đinh | Học Mò | PHUNG.VN | Đăng Đạt

Bạn được quyền sao chép lại nội dung trên website Đỗ Trung Quân, miễn là có dẫn nguồn.

Hosting/VPS được tài trợ bởi AZDIGI - Nhà cung cấp Server Hosting tốt nhất hiện nay

AZDIGI - Nhà cung cấp Server Hosting tốt nhất hiện nay


Back To Top
Đỗ Trung Quân
  • HƯỚNG DẪN
  • LINUX
    • Linux Tricks
    • Distro Linux
      • CentOS/RedHat
      • CloudLinux
      • Ubuntu/Debian
      • AlmaLinux
    • WebServer
      • NGINX
      • Apache
      • LiteSpeed
    • Virtualization
    • Monitoring Tool
      • Zabbix
    • DevOPS
      • Ansible
      • Docker
      • Jenkins
      • AWS
    • Mail Server
    • VPN
  • CONTROL PANEL
    • cPanel
    • DirectAdmin
    • aaPanel
    • FastPanel
    • CyberPanel
    • Easypanel
    • VestaCP
    • CloudPanel
    • HestiaCP
    • Plesk
    • Script VPS
  • DNS
    • Domain
  • CMS
    • WordPress
    • Laravel
  • SECURITY
    • SSL
    • Firewall
  • DỊCH VỤHOT
  • KHUYẾN MÃI
  • WEB MẪUHOT