Vô hiệu hóa External HTTP Requests để tăng tốc WordPress Site


Vấn đề / Problem

Trong quá trình phát triển website bằng WordPress cho công ty, mình vô tình phát hiện ra rằng WordPress, và một số plugins thực hiện việc gửi các yêu cầu (HTTP Request) ra bên ngoài khi bạn thực hiện việc tải (load) trang. Các yêu cầu này khiến website trở nên chậm chạp, đặc biệt là trong các trường hợp website đang phát triển ở Localhost, kết nối mạng chậm hoặc nếu website đặt ở hosting ở Việt Nam, vì các yêu cầu này thường gửi các máy chủ ở Mỹ.

Đây là ví dụ về việc website wordpress gửi HTTP Request ra bên ngoài.

Từ hình ảnh capture trên, các bạn có thể thấy đó là trang web của mình có 2 External HTTP Request, 2 request này mất khoảng 2.5 giây mới hoàn thành. Điều này vô tình làm cho website của chúng ta chậm thêm 2.5 giây nữa.

Giáp pháp / Solutions

Giải pháp cho vấn đề này thực ra vô cùng đơn giản, đó là vô hiệu hóa (Disable/Block) External HTTP Request bằng việc thêm cấu hình này vào trong file wp-config.php

// Disable External HTTP Request
define('WP_HTTP_BLOCK_EXTERNAL', true);

Như vậy tất cả các request gửi đi từ website wordpress của chúng ta sẽ không được thực hiện. Tuy nhiên nếu các bạn muốn cho phép gửi yêu cầu tới 1 số trang web nhất định. VD cho phép gửi gửi yêu cầu tới wordpress.org để check xem có bản cập nhật mới của wordpress chưa chẳng hạn. Để làm được điều này thì các bạn thêm đoạn mã sau vào file wp-config.php

// Setup whitelist
define('WP_ACCESSIBLE_HOSTS', 'wordpress.org, vinasupport.com');

Các website trong whitelist cách nhau bởi dấu phẩy. Hy vọng bài viết này sẽ giúp cho các bạn có thêm 1 giải pháp giúp tăng tốc wordpress site của bạn.

Chú ý: Nếu bạn vô hiệu hóa toàn bộ request ra bên ngoài thì website của các bạn không thể biết được khi nào có bản nâng cấp, vì vậy các bạn nên setup tham số “WP_ACCESSIBLE_HOSTS” cho phép request tới trang wordpress.org.

Nguồn: vinasupport.com

SHARE

Bài viết liên quan

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web