Trong bài viết này, bạn sẽ tìm hiểu mixed content là gì, những ảnh hưởng của lỗi này và cách kiểm tra, khắc phục trên WordPress.
Mixed content là gì?
Mixed content là tình trạng một trang web được tải qua HTTPS nhưng vẫn sử dụng một số tài nguyên thông qua HTTP. Các tài nguyên này có thể bao gồm hình ảnh, video, tập lệnh, biểu định kiểu hoặc liên kết được nhúng trong trang.
Để trình duyệt hiển thị kết nối HTTPS an toàn đầy đủ, các tài nguyên trên website cũng cần được tải qua HTTPS khi máy chủ hỗ trợ giao thức này.
Tùy trình duyệt, cảnh báo mixed content có thể xuất hiện dưới nhiều hình thức khác nhau:
Lỗi này thường phát sinh sau khi chuyển website từ HTTP sang HTTPS nhưng chưa cập nhật toàn bộ đường dẫn tài nguyên. Khi đó, dù chứng chỉ SSL đã được cài đặt, một số thành phần của WordPress vẫn có thể sử dụng kết nối HTTP.
Các trường hợp thường gây lỗi mixed content
Một số nguyên nhân phổ biến dẫn đến cảnh báo mixed content gồm:
HTTPS là viết tắt của Hyper Text Transfer Protocol Secure, một giao thức truyền tải dữ liệu có mã hóa nhằm bảo vệ thông tin trong quá trình trao đổi giữa trình duyệt và máy chủ. Nhờ đó, những dữ liệu nhạy cảm như thông tin đăng nhập hoặc thanh toán được bảo vệ tốt hơn khi kết nối được cấu hình đúng cách.
Khi website WordPress sử dụng SSL và HTTPS đúng cách, trình duyệt thường hiển thị biểu tượng kết nối an toàn trên thanh địa chỉ. Bạn có thể nhấn vào biểu tượng này để xem thông tin chứng chỉ SSL.
Tại sao không nên bỏ qua cảnh báo mixed content?
Mixed content không chỉ ảnh hưởng đến cách trình duyệt hiển thị trạng thái bảo mật mà còn có thể tác động đến trải nghiệm của người truy cập. Vì vậy, bạn nên xác định nguyên nhân và xử lý sớm.
Bảo mật website
Bảo mật là yếu tố quan trọng khi vận hành website WordPress. Việc sử dụng HTTPS giúp giảm nguy cơ dữ liệu bị đọc hoặc can thiệp trong quá trình truyền tải
Nếu website vẫn tải một số tài nguyên qua HTTP, những thành phần đó có thể bị bên thứ ba can thiệp. Điều này đặc biệt đáng lưu ý với website thương mại điện tử hoặc trang có chức năng đăng nhập, thanh toán.
Do đó, bạn nên đảm bảo các tài nguyên trên website được tải qua kết nối an toàn trước khi khách hàng thực hiện những giao dịch quan trọng.
Ảnh hưởng đến SEO
HTTPS đã được Google xác nhận là một tín hiệu xếp hạng trong kết quả tìm kiếm. Ngoài ra, các vấn đề phát sinh từ tài nguyên không an toàn có thể ảnh hưởng đến trải nghiệm người dùng và cách website hoạt động.
Nếu mixed content khiến tài nguyên không tải được hoặc làm phát sinh vấn đề về hiệu suất, website có thể bị ảnh hưởng gián tiếp đến hiệu quả SEO. Vì vậy, việc xử lý lỗi này là một phần trong quá trình duy trì website ổn định.
Ảnh hưởng đến độ tin cậy
Cảnh báo bảo mật có thể khiến khách truy cập nghi ngờ mức độ an toàn của website, đặc biệt khi họ cần cung cấp thông tin cá nhân hoặc thực hiện thanh toán.
Ngay cả khi nội dung hữu ích, trải nghiệm không tốt do cảnh báo bảo mật vẫn có thể khiến người dùng rời trang sớm. Khắc phục mixed content giúp website tạo cảm giác đáng tin cậy hơn và hạn chế những trở ngại không cần thiết trong quá trình sử dụng.
Các loại mixed content
Mixed content thường được chia thành hai nhóm chính:
-
Mixed content chủ động (Active Mixed Content): Xảy ra khi trang HTTPS tải các thành phần có khả năng thay đổi hoặc can thiệp vào nội dung trang, chẳng hạn JavaScript qua HTTP. Đây là loại cần đặc biệt chú ý vì kẻ tấn công có thể can thiệp vào dữ liệu, đánh cắp thông tin hoặc chèn mã độc.
-
Mixed content thụ động (Passive Mixed Content): Xuất hiện khi các tài nguyên như hình ảnh, âm thanh hoặc video được tải qua HTTP trên trang HTTPS. Loại này thường có mức độ rủi ro thấp hơn mixed content chủ động, nhưng vẫn có thể làm phát sinh cảnh báo bảo mật.
Cách xác định tài nguyên HTTP trên trang HTTPS
Trước khi sửa lỗi, bạn cần kiểm tra xem website đã có chứng chỉ SSL hợp lệ hay chưa. Sau đó, xác định những tài nguyên vẫn đang sử dụng HTTP.
Bạn có thể thực hiện việc kiểm tra bằng plugin WordPress, công cụ trực tuyến hoặc tính năng Inspect của trình duyệt.
Sử dụng plugin
Bạn có thể sử dụng plugin để hỗ trợ phát hiện và xử lý các vấn đề liên quan đến HTTPS.
WordPress HTTPS (SSL) là một plugin từng được sử dụng để hỗ trợ cấu hình HTTPS trên WordPress. Theo nội dung hướng dẫn gốc, sau khi cài đặt và kích hoạt, bạn có thể truy cập phần cài đặt của plugin để thiết lập một số tùy chọn như:
Sử dụng công cụ kiểm tra trực tuyến
Bạn có thể sử dụng WhyNoPadLock để kiểm tra URL website và xác định những tài nguyên chưa được tải qua HTTPS.
Sau khi nhập địa chỉ website và bắt đầu quét, công cụ sẽ hiển thị kết quả kiểm tra. Dấu tích màu xanh thường cho biết hạng mục tương ứng đã vượt qua bước kiểm tra.
Ngoài ra, HTTPS Checker cũng là một lựa chọn để kiểm tra tài nguyên mixed content, chuyển hướng, liên kết không an toàn và trạng thái chứng chỉ SSL. Công cụ này hỗ trợ kiểm tra nhiều vấn đề liên quan đến HTTPS trên website.
Sử dụng Inspect Element trên Chrome
Bạn cũng có thể xác định lỗi trực tiếp bằng công cụ dành cho nhà phát triển của Google Chrome.
Thực hiện theo các bước sau:
-
Mở trang WordPress đang gặp cảnh báo.
-
Nhấp chuột phải trên trang và chọn Inspect.
-
Chuyển sang tab Console.
-
Tìm những thông báo liên quan đến mixed content hoặc tài nguyên HTTP không an toàn.
Console thường hiển thị URL của tài nguyên gây lỗi, giúp bạn xác định thành phần cần xử lý mà không phải kiểm tra thủ công từng đường dẫn.
Tuy nhiên, phương pháp này cần được thực hiện trên từng trang cần kiểm tra. Nếu muốn rà soát nhiều URL trên toàn website, bạn có thể tham khảo Ahrefs Site Audit để kiểm tra các liên kết và tài nguyên có vấn đề.
Cách sửa lỗi mixed content trong WordPress
Sau khi xác định được những tài nguyên gây lỗi, bạn có thể cập nhật đường dẫn HTTP thành HTTPS nếu tài nguyên đó hỗ trợ HTTPS.
Cập nhật địa chỉ website trong WordPress
Đầu tiên, đăng nhập vào trang quản trị WordPress, sau đó truy cập Settings → General.
Tại đây, kiểm tra và cập nhật hai trường:
Đảm bảo cả hai địa chỉ đều sử dụng HTTPS nếu website đã được cấu hình SSL tương ứng.
Cách này phù hợp để cập nhật địa chỉ chính của website, nhưng không tự động sửa toàn bộ đường dẫn HTTP nằm trong nội dung bài viết, theme, plugin hoặc cơ sở dữ liệu.
Sử dụng plugin SSL Insecure Content Fixer
Nếu cần hỗ trợ xử lý mixed content trên website, bạn có thể tham khảo plugin SSL Insecure Content Fixer.
Sau khi cài đặt và kích hoạt plugin, truy cập mục Settings để lựa chọn mức độ xử lý phù hợp. Plugin cung cấp các cấp độ sau:
-
Simple: Mức mặc định, tập trung xử lý các tài nguyên như script, stylesheet đã đăng ký, hình ảnh và một số phương tiện khác. Cấp độ này có thể không xử lý được tất cả hình ảnh hoặc iframe được khai báo cố định trong HTML.
-
Capture All: Mức xử lý cao nhất theo danh sách của plugin, bao gồm cả những yêu cầu AJAX. Do phạm vi can thiệp rộng, tùy chọn này cần được sử dụng thận trọng để tránh xung đột với theme hoặc plugin khác.
Bạn nên bắt đầu từ mức Simple, sau đó kiểm tra lại website. Nếu lỗi vẫn còn, hãy cân nhắc tăng dần mức xử lý và kiểm tra khả năng tương thích sau mỗi lần thay đổi.
Ngoài ra, nếu tài nguyên HTTP nằm cố định trong mã nguồn theme, plugin hoặc cơ sở dữ liệu, bạn có thể cần sửa trực tiếp đường dẫn tương ứng. Việc sử dụng plugin chỉ là giải pháp hỗ trợ; bạn vẫn nên xác định và xử lý nguyên nhân gốc để tránh lỗi tái diễn.