Lưu trữ & Tiện ích mở rộng WordPress
Giúp WordPress nhanh chóng và an toàn: Danh sách kiểm tra hiệu suất và plugin
WordPress chỉ có thể nhanh và an toàn ngang với nền tảng vận hành nó. Dưới đây là danh sách kiểm tra thực tế mà chúng tôi áp dụng cho mọi trang web WordPress do chúng tôi lưu trữ — những gì cần lưu vào bộ nhớ đệm, những gì cần bảo mật, và những plugin nào thực sự xứng đáng được giữ lại so với những plugin đã trở nên dư thừa do nền tảng hỗ trợ sẵn.
WordPress chỉ thực sự tốt khi nền tảng vận hành nó đủ tốt
WordPress vận hành một phần lớn trang web vì tính linh hoạt, nhưng sự linh hoạt đó cũng là nguyên nhân khiến hệ thống trở nên chậm chạp và kém an toàn: một bản cài đặt mặc định truy vấn cơ sở dữ liệu hàng chục lần trên mỗi trang, công khai phiên bản cùng cấu trúc công nghệ cho bất kỳ ai quan sát, đồng thời khiến quý vị tiếp tục tích lũy các plugin cho đến khi hiệu năng lẫn phạm vi tấn công đều âm thầm tăng vọt. Không điều nào trong số đó là lỗi của WordPress, mà đúng hơn là hệ quả của việc vận hành nền tảng này trên một cơ sở hạ tầng không mang lại bất kỳ sự hỗ trợ nào.
Tin vui là chỉ cần vài quyết định tương tự nhau là có thể giải quyết được phần lớn vấn đề, và đó là các quyết định về ngăn xếp công nghệ chứ không phải về nội dung. Hãy lưu bộ nhớ đệm một cách chủ động ở đúng tầng, giữ cơ sở dữ liệu tránh khỏi đường dẫn chịu tải cao, chỉ chạy số ít plugin thực sự cần thiết, luôn cập nhật các bản vá cho mọi thành phần, và cô lập trang web để khoanh vùng mọi sự cố. Bài viết này chính là danh sách kiểm tra đó, theo đúng thứ tự mà chúng tôi áp dụng cho từng trang WordPress trên nền tảng.
Bộ nhớ đệm trên máy chủ, không chỉ trong plugin
Đòn bẩy lớn nhất duy nhất cho tốc độ của WordPress là hoàn toàn không khởi chạy WordPress đối với phần lớn các lượt truy cập. Một yêu cầu tiêu chuẩn sẽ khởi động WordPress, chạy các tiện ích mở rộng của bạn và truy vấn cơ sở dữ liệu trước khi gửi đi một byte; bộ nhớ đệm toàn trang sẽ phục vụ trang hoàn chỉnh trực tiếp từ máy chủ web trong lần truy cập tiếp theo, bỏ qua toàn bộ quá trình khởi động đó. Nơi lưu trữ bộ nhớ đệm đó rất quan trọng: một tiện ích mở rộng bộ nhớ đệm nằm bên trong PHP, vì vậy PHP vẫn khởi động trước khi bộ nhớ đệm có thể phản hồi, trong khi bộ nhớ đệm ở cấp độ máy chủ phản hồi sớm hơn trong tiến trình yêu cầu và lưu giữ các trang ở định dạng mà máy chủ có thể xóa ngay lập tức.
Mọi trang web WordPress do chúng tôi lưu trữ đều chạy trên LiteSpeed Enterprise với LSCache cấp máy chủ, và plugin bộ nhớ đệm của chính chúng tôi kết nối WordPress với hệ thống một cách chính xác ngay sau khi cài đặt — được cài đặt sẵn và tự động cập nhật, giúp quý khách bớt đi một việc cần cấu hình hoặc duy trì cập nhật. Trên máy chủ gốc không phải LiteSpeed, chính plugin này chỉ đơn giản là không phát ra các tiêu đề toàn bộ trang và không gây cản trở trong khi bộ nhớ đệm đối tượng vẫn tiếp tục hoạt động, nhờ đó trang web được di chuyển sẽ không bao giờ bị rơi vào tình trạng cấu hình dở dang. Quy tắc thực tế cho danh sách kiểm tra của quý khách: một bộ nhớ đệm toàn bộ trang ở cấp máy chủ, và đừng xếp chồng thêm một plugin bộ nhớ đệm thứ hai lên trên nó — chúng sẽ xung đột với nhau.
Bộ nhớ đệm đối tượng và cơ sở dữ liệu
Không phải yêu cầu nào cũng có thể là một trang tĩnh. Các phiên đã đăng nhập, trang quản trị, tìm kiếm, giỏ hàng và bất kỳ phân đoạn được cá nhân hóa nào đều phải thực thi PHP, và đối với những trường hợp đó, mục tiêu chuyển từ việc bỏ qua ứng dụng sang bỏ qua cơ sở dữ liệu. Bộ nhớ đệm đối tượng cho từng trang web — trong trường hợp của chúng tôi là Redis — lưu giữ kết quả của các lượt đọc cơ sở dữ liệu lặp lại trong bộ nhớ, do đó các tùy chọn, dữ liệu tạm thời và tra cứu tương tự không bị truy vấn lại từ cơ sở dữ liệu trong mỗi lượt truy cập. Hiệu quả thể hiện rõ ràng ở chính những nơi mà bộ nhớ đệm toàn trang không thể hỗ trợ: trang quản trị nhanh hơn, giỏ hàng nhanh hơn và tải cơ sở dữ liệu thấp hơn nhiều khi có lưu lượng truy cập cao.
Từ khóa quan trọng ở đây là theo từng trang web (per-site). Bộ nhớ đệm đối tượng dùng chung đồng nghĩa với việc một trang web bận rộn hoặc được viết mã kém có thể đẩy dữ liệu đệm của tất cả những trang khác ra ngoài và làm cạn kiệt cơ sở dữ liệu của các trang lân cận; một bộ nhớ đệm riêng biệt cho từng trang web, kết hợp với các giới hạn cơ sở dữ liệu theo từng trang, sẽ kiểm soát vùng ảnh hưởng đó. Trong danh sách kiểm tra của quý vị, hãy coi bộ nhớ đệm đối tượng liên tục là bắt buộc đối với bất kỳ trang web nào có người dùng đăng nhập hoặc có cửa hàng, đồng thời hãy cảnh giác với dịch vụ lưu trữ chia sẻ bộ nhớ đệm này giữa các khách hàng thuê.
Các plugin đáng để sử dụng — và những plugin mà nền tảng thay thế
Mỗi plugin bạn thêm vào đều là mã chạy theo yêu cầu và là một cánh cửa mà ai đó có thể bước qua vào một ngày nào đó, vì vậy mục tiêu chân thực là dùng ít plugin nhất có thể mà vẫn mang lại hiệu quả cao nhất. Một dịch vụ lưu trữ tốt sẽ loại bỏ nhu cầu về cả một danh mục plugin: với tính năng lưu vào bộ nhớ đệm ở cấp máy chủ, bộ nhớ đệm đối tượng được quản lý và các bản sao lưu nền tảng, bạn không cần plugin lưu bộ nhớ đệm, plugin lưu bộ nhớ đệm đối tượng riêng biệt hay plugin sao lưu — những công việc đó được thực hiện tốt hơn ở bên dưới WordPress, và việc chạy chúng bên trên chỉ làm tăng thêm xung đột và chi phí tài nguyên.
Những gì còn lại đáng để chạy là nhóm nhỏ mang lại khả năng thực sự: các plugin mà trang web của bạn thực sự cần cho chức năng của nó, và — trên nền tảng của chúng tôi — hai plugin chuẩn kho lưu trữ mà chúng tôi xây dựng và cung cấp kèm theo mỗi trang web. Plugin bộ nhớ đệm của chúng tôi kết nối WordPress với bộ nhớ đệm máy chủ và xử lý việc xóa thông minh để mỗi lần chỉnh sửa chỉ xóa các trang cần xóa. Plugin footprint của chúng tôi loại bỏ các dấu hiệu mà bản cài đặt WordPress mặc định phát đi — thẻ phiên bản và thẻ trình tạo, các điểm cuối khám phá, XML-RPC, pingback và tiêu đề powered-by — trong mỗi lần triển khai, do đó bản cập nhật plugin hoặc giao diện không thể âm thầm khôi phục chúng. Cả hai đều được xây dựng theo tiêu chuẩn thư mục plugin của WordPress.org, miễn phí và tự động cập nhật.
Giữ cho WordPress luôn an toàn và cập nhật
Hầu hết các vụ xâm nhập WordPress không hề tinh vi; chúng chỉ là những lỗ hổng cũ. Một phần lõi, giao diện hoặc tiện ích mở rộng lỗi thời chứa lỗ hổng bảo mật đã được công bố là nguyên nhân phổ biến nhất khiến các trang web bị tấn công, điều này khiến việc duy trì cập nhật trở thành công việc bảo mật giá trị nhất — và cũng tẻ nhạt nhất, đó là lý do nó thường bị bỏ qua. Dịch vụ lưu trữ được quản lý nên giải quyết vấn đề này cho quý vị: vá lỗi ngăn xếp công nghệ bên dưới WordPress, đồng thời giúp việc áp dụng các bản cập nhật lõi và tiện ích mở rộng trở nên an toàn bằng cách cung cấp cho quý vị một bản sao thử nghiệm để kiểm tra và một bản sao lưu để khôi phục.
Bên cạnh tính cập nhật, hãy kỳ vọng các ranh giới được thực thi cho quý vị: tính năng quét phần mềm độc hại được bật theo mặc định để sự lây nhiễm được ngăn chặn kịp thời thay vì do khách truy cập phát hiện, sự cô lập để một trang web bị xâm nhập không thể ảnh hưởng đến trang khác, tính năng bảo vệ DDoS tại vùng biên, và TLS ở khắp mọi nơi với chứng chỉ được tự động gia hạn. Không có điều nào trong số đó thay thế được các biện pháp an toàn cơ bản — thông tin xác thực mạnh, quyền truy cập tối thiểu, gỡ bỏ các tiện ích mở rộng quý vị không còn sử dụng — nhưng điều đó có nghĩa là cơ sở hạ tầng không phải là mắt xích yếu. Trong danh sách kiểm tra của quý vị, câu hỏi dành cho bất kỳ nhà cung cấp dịch vụ lưu trữ nào cũng rất đơn giản: bảo mật là mặc định, hay là một gói dịch vụ quý vị phải mua thêm?
WooCommerce và những trang mà bạn tuyệt đối không được lưu vào bộ nhớ đệm
Cửa hàng là nơi bộ nhớ đệm chủ động mang lại lợi ích lớn nhất nhưng cũng gây ra thiệt hại tồi tệ nhất nếu thiết lập một cách thiếu thận trọng. Các trang danh mục, sản phẩm và chuyên mục là những trang có lưu lượng truy cập cao nhất và có thể lưu vào bộ nhớ đệm tốt nhất của bạn, và việc phân phối chúng từ bộ nhớ đệm toàn trang là điều tốt nhất bạn có thể làm cho tốc độ của cửa hàng. Nhưng các trang giỏ hàng, thanh toán và tài khoản là trang cá nhân và tuyệt đối không bao giờ được phân phối từ bộ nhớ đệm dùng chung — nếu làm như vậy, người mua sắm sẽ nhìn thấy giỏ hàng của người khác, điều này vừa làm hỏng hoạt động của cửa hàng vừa là một sự cố vi phạm quyền riêng tư.
Cách để có được cả hai là lưu trang vào bộ nhớ đệm và đục lỗ cho các phần động. Edge Side Includes hiển thị phân đoạn giỏ hàng, tổng số tiền trong giỏ hàng thu nhỏ và trạng thái tài khoản theo từng yêu cầu trong khi phần còn lại của trang được phân phối từ bộ nhớ đệm, đồng thời các trang cart, checkout, my-account và bất kỳ trang nonce hoặc phiên nào đều bị loại trừ theo mặc định. Tính mới của dữ liệu được xử lý bằng cơ chế tự động xóa thông minh kích hoạt khi sản phẩm, giá hoặc đơn hàng thay đổi, nhờ đó mức giá cũ không bao giờ tồn tại kéo dài. Nếu bạn đang chạy WooCommerce, đây là phần trong danh sách kiểm tra cần phải thực hiện thật chuẩn xác: giao diện cửa hàng nhanh chóng từ bộ nhớ đệm, giỏ hàng trực tiếp cho từng người dùng, không bao giờ lưu vào bộ nhớ đệm bất kỳ thông tin cá nhân nào.
Câu hỏi thường gặp
Tôi có còn cần một plugin bộ nhớ đệm như WP Rocket không?
Không. Việc lưu bộ nhớ đệm toàn trang được xử lý tại máy chủ web bởi LSCache của LiteSpeed, plugin bộ nhớ đệm riêng của chúng tôi kết nối WordPress với hệ thống đó và xử lý việc dọn dẹp thông minh, đồng thời có một bộ nhớ đệm đối tượng Redis riêng cho từng trang web hoạt động phía sau. Việc thêm một plugin lưu bộ nhớ đệm toàn trang thứ hai thường sẽ xung đột với bộ nhớ đệm cấp máy chủ thay vì hỗ trợ, do đó điều này không cần thiết và cũng không được khuyến nghị.
Nền tảng này làm cho những plugin nào trở nên không cần thiết?
Các plugin lưu vào bộ nhớ đệm, các plugin bộ nhớ đệm đối tượng riêng biệt và các plugin sao lưu đều là dư thừa ở đây, vì những công việc đó được thực hiện ở tầng bên dưới WordPress — bộ nhớ đệm cấp máy chủ, bộ nhớ đệm đối tượng được quản lý cho từng trang web và các bản sao lưu nền tảng. Việc loại bỏ chúng giúp giảm xung đột và bề mặt tấn công. Những gì còn lại đáng để vận hành là các plugin mà trang web của quý vị thực sự cần cho chức năng của nó, cộng với hai plugin miễn phí về bộ nhớ đệm và footprint của chúng tôi, vốn được cài đặt sẵn.
Việc lưu vào bộ nhớ đệm có làm hỏng giỏ hàng WooCommerce hoặc các trang dành cho người dùng đã đăng nhập của tôi không?
Không. Theo mặc định, giỏ hàng, thanh toán, my-account và bất kỳ trang nonce hoặc phiên nào đều bị loại trừ khỏi bộ nhớ đệm, đồng thời Edge Side Includes giữ cho phân đoạn giỏ hàng và tổng số tiền luôn được cập nhật trực tiếp trên các trang vẫn được lưu trong bộ nhớ đệm. Người mua sắm luôn nhìn thấy giỏ hàng của chính họ và quy trình thanh toán đang hoạt động trong khi giao diện cửa hàng vẫn tải từ bộ nhớ đệm, đồng thời tính năng tự động xóa thông minh sẽ xóa các trang bị ảnh hưởng khi sản phẩm, giá hoặc đơn hàng thay đổi.
Làm thế nào để quý khách giữ cho WordPress an toàn mà tôi không cần phải quản lý nó?
Chúng tôi vá các lớp hạ tầng bên dưới WordPress, giúp việc áp dụng các bản cập nhật cốt lõi và plugin trở nên an toàn nhờ môi trường thử nghiệm và tính năng khôi phục bằng một lần nhấp, bật tính năng quét phần mềm độc hại và bảo vệ chống tấn công DDoS theo mặc định, cô lập từng trang web để sự cố không thể lây lan, đồng thời tự động cấp và gia hạn chứng chỉ TLS. Điều đó giúp hạ tầng không còn là mắt xích yếu; việc thực hiện các biện pháp an toàn cơ bản như sử dụng thông tin đăng nhập mạnh và xóa các plugin không sử dụng vẫn thuộc trách nhiệm của bạn.
Liên quan
Dùng thử miễn phí trong 14 ngày
Khởi chạy các trang web đầu tiên của bạn miễn phí trong 14 ngày — không cần thẻ. Bạn muốn chuyển một trang web hoặc mạng lưới hiện có? Di chuyển hoàn toàn miễn phí và không giới hạn.
Bắt đầu miễn phí