Khi chuyển từ HTTP sang HTTPS, trang Web có thể gặp phải lỗi Mixed Content. Bạn cần biết nguyên nhân và cách sửa lỗi này để Website được bảo mật tốt hơn.
Doanh nghiệp cần chuyển đổi trang Web sang giao thức HTTPS. Nó không chỉ an toàn hơn mà còn cấp dữ liệu giới thiệu chính xác hơn, giúp bạn xây dựng lòng tin với khách truy cập. Đồng thời, HTTPS cũng là yếu tố xếp hạng trên công cụ tìm kiếm. Tuy nhiên, khi chuyển từ HTTP sang HTTPS, chủ sở hữu trang Web có thể gặp phải một số vấn đề. Một trong số đó là lỗi Mixed Content (nội dung hỗn hợp). Bài viết hôm nay sẽ hướng dẫn bạn một số cách để khắc phục sự cố này trên trang Web WordPress của mình.
Mục lục bài viết
Lỗi Mixed Content là gì?

Cách sửa lỗi Mixed Content
Lỗi Mixed Content xuất hiện trong trình duyệt của người dùng khi trang Web họ muốn truy cập đang tải các tập lệnh hoặc nội dung HTTPS và HTTP cùng một lúc. Điều này có thể gây ra sự cố vì HTTP và HTTPS là các giao thức hoàn toàn riêng biệt.
Khi bạn chuyển sang HTTPS, mọi thứ cần phải chạy qua giao thức đó. Chúng bao gồm cả hình ảnh, tệp JavaScript của bạn,…
Search Engine Optimization - Tối ưu hóa công cụ tìm kiếm (SEO) là quá trình tăng chất lượng và lưu lượng truy cập website bằng cách tăng khả năng hiển thị của website cho người dùng trên Google, Bing, Yahoo,... SEO liên quan tới cải thiện kết quả tìm kiếm không tốn phí. Là một chiến lược Internet marketing, SEO dùng để cải thiện thứ hạng website trên trang kết quả của công cụ tìm kiếm (SERP), nhờ đó tăng lưu lượng truy cập và lượng khách hàng được chuyển đổi từ nguồn này.
Ví dụ về lỗi Mixed Content trong Ahrefs
Chrome hiện là trình duyệt được hơn 77% trang Web sử dụng. Nếu có lỗi Mixed Content, khách truy cập của bạn sẽ thấy cảnh báo sau:

Cảnh báo Mixed Content
Còn trong Firefox, cảnh báo nội dung hỗn hợp hiển thị như hình bên dưới:

Cảnh báo Mixed Content FireFox
Tiếp theo là ví dụ về cảnh báo này trong Internet Explorer:

Cảnh báo Mixed Content Internet Explorer
Nguyên nhân xảy ra lỗi Mixed Content là gì?
Dưới đây là một số nguyên nhân bổ sung của cảnh báo này:
- Bạn vừa thêm một dịch vụ hoặc Plugin mới vào trang Web của mình. Đặc biệt, các nhà phát triển đôi khi không sử dụng Absolute Paths (http://yourdomain.com/style.css) trong các Plugin hoặc Themes của họ để liên kết đến CSS và JavaScript. Thay vào đó, họ sử dụng Relative Paths (/style.css).
- Hình ảnh của bạn có Hardcoded URL (http://yourdomain.com/image.png) chạy trên phương thức HTTP. Chúng có thể nằm trong các bài đăng, trang hoặc thậm chí là các Widget.
- Bạn đang liên kết đến các phiên bản HTTP của các tập lệnh bên ngoài.
- Bạn đã nhúng tập lệnh Video sử dụng HTTP thay vì HTTPS.
Cách sửa lỗi Mixed Content
Giả định rằng bạn đã cài đặt chứng chỉ SSL, đã chuyển hướng HTTP sang HTTPS (trên toàn trang Web). Bạn có thể làm theo bốn bước đơn giản dưới đây để khắc phục các cảnh báo về lỗi Mixed Content.
Bước 1: Tìm tài nguyên nào đang Load bằng HTTP
Điều đầu tiên bạn cần làm là tìm ra tài nguyên nào vẫn đang tải qua HTTP.
Hãy nhớ rằng những cảnh báo này có thể chỉ xảy ra ở một số khu vực nhất định trên trang Web của bạn. Bạn đến trang hiển thị cảnh báo và khởi chạy Chrome DevTools bằng cách nhấn tổ hợp phím sau:
- Đối với Windows: bạn nhấn F12 hoặc CTRL + Shift + I.
- Đối với MacOS: bạn ấn Cmd + Opt + I.
Bạn có thể kiểm tra để biết tài nguyên nào không tải qua HTTPS như sau:
Đầu tiên là Tab Console. Nếu có lỗi Mixed Content, chúng sẽ được đánh dấu bằng màu đỏ hoặc vàng. Thông thường, chúng kèm theo thông tin giải thích rằng “Yêu cầu này đã bị chặn; nội dung phải được phân phát qua HTTPS.”. Điều này có nghĩa là cài đặt trình duyệt được định cấu hình để tự động chặn bất kỳ nội dung HTTP nào.

Check lỗi trong console
Bạn cũng có thể tìm lỗi Mixed Content trong Tab Bảo mật của Chrome DevTools. Hoặc bạn cũng có thể thấy chúng trong Tab Network.

Check lỗi trong tab bảo mật
Nếu bạn không sử dụng Chrome hoặc chỉ muốn tóm tắt nhanh các lỗi, bạn cũng có thể sử dụng một công cụ miễn phí như Why No Padlock. Nó quét một trang riêng lẻ và hiển thị cho bạn tất cả các tài nguyên không an toàn. Công cụ này rất dễ sử dụng. Bạn chỉ cần nhập URL của mình và nhấp vào Kiểm tra trang (Test Page).

Check lỗi với Why No Padlock
Ngoài ra, bạn còn có thể kiểm tra cảnh báo HTTPS hàng loạt thông qua công cụ Ahrefs Site Audit. Công cụ này có khả năng phát hiện nội dung hỗn hợp HTTPS / HTTP.
Bước 2: Xác minh xem liệu tài nguyên HTTP có thể chuyển sang HTTPS được hay không?
Bước tiếp theo, bạn cần xác nhận rằng các tài nguyên tải qua HTTP có thể truy cập được qua HTTPS.
Ví dụ, bạn có tài nguyên HTTP như URL hình ảnh (với Prefix HTTP). Bạn nhập URL này vào thanh địa chỉ của trình duyệt và thay thế HTTP bằng HTTPS ở đầu. Nếu bạn thấy chúng đều có thể Load bình thường tức là tài nguyên HTTP này có thể chuyển sang HTTPS. Bạn chỉ cần thực hiện tìm kiếm và thay thế trên trang Web của mình là được.
Bước 3: Sử dụng tính năng tìm kiếm và thay thế
Nếu bạn sử dụng Kinsta, bạn có thể dùng công cụ tìm kiếm và thay thế trong bảng điều khiển MyKinsta.
- Bạn tới trang công cụ trên Website của bạn. Tiếp đến, bạn nhấp vào Tìm kiếm và Thay thế.
- Trong trường tìm kiếm, nhập giá trị bạn muốn tìm trong cơ sở dữ liệu. Sau đó, bạn Click nút Tìm kiếm.
- Bạn đánh dấu vào ô Replace để tiếp tục quá trình thay thế. Trong trường Thay thế bằng (Replace With), bạn nhập nội dung sẽ thay thế giá trị bạn đang tìm kiếm.
- Bạn có thể chọn hộp Xóa bộ nhớ Cache để tự động xóa bộ nhớ Cache Kinsta sau khi quá trình tìm kiếm và thay thế hoàn tất.
- Cuối cùng, bạn nhấp vào nút Thay thế.

Tìm kiếm và thay thể với Kinsta
Nếu không sử dụng Kinsta, bạn có thể hoàn thành tác vụ tương tự bằng Plugin Better Search Replace miễn phí. Sau đó, bạn chỉ cần xóa nó sau khi hoàn tất. Bạn có thể tải công cụ này từ Thư mục Plugin WordPress hoặc bằng cách tìm kiếm nó trong bảng điều khiển WordPress của bạn. Sau khi kích hoạt nó, chỉ cần tìm kiếm tên miền HTTP và thay thế nó bằng miền HTTPS của bạn.
Hoặc bạn cũng có thể thực hiện tìm kiếm và thay thế bằng Interconnect/It Search Replace DB PHP Script hoặc WP-CLI .
Bước 4: Tái kiểm tra liệu lỗi Mixed Content đã được sửa hay chưa.
Nhà quản trị Web cần kiểm tra lại trang Web của mình để xác nhận rằng các cảnh báo về lỗi Mixed Content đã biến mất. Bạn nên truy cập Website của mình trên giao diện người dùng. Sau đó, bạn nhấp vào một vài trang trong khi xem chỉ báo trạng thái trình duyệt trên thanh địa chỉ.
HSTS (HTTP Strict Transport Security) là gì?

HSTS là gì?