← Kiến thức / Technical SEO

Chưa cài HTTPS hoặc bị mixed content

Tác giả: Hà Trang17/02/20267 phút đọc
Chưa cài HTTPS hoặc bị mixed content

Chưa cài HTTPS hoặc bị mixed content là sự cố bảo mật làm giảm điểm SEO và trải nghiệm người dùng. Tìm hiểu cách cài Let's Encrypt và xử lý lỗi chi tiết.

Khi mới bắt đầu xây dựng một website, nhiều bạn sinh viên và lập trình viên thường tập trung vào giao diện, tính năng hoặc chuẩn bị nội dung mà bỏ qua bước thiết lập chứng chỉ bảo mật HTTPS. Việc duy trì giao diện kết nối không bảo mật HTTP không chỉ ảnh hưởng xấu đến trải nghiệm người dùng mà còn khiến trang web chịu điểm trừ lớn từ thuật toán xếp hạng của Google. Trình duyệt hiện đại như Google Chrome hay Mozilla Firefox sẽ ngay lập tức hiển thị cảnh báo Không an toàn (Not Secure) màu đỏ trên thanh địa chỉ, làm giảm tỷ lệ chuyển đổi và tăng tỷ lệ thoát trang một cách đáng kể.

Để giải quyết vấn đề chi phí cho các dự án nhỏ hoặc bài tập lớn, chứng chỉ SSL miễn phí từ Let's Encrypt đã trở thành giải pháp tiêu chuẩn được toàn bộ cộng đồng phát triển web tin dùng. Tuy nhiên, việc cài đặt thành công chứng chỉ SSL chưa phải là điểm kết thúc của quá trình tối ưu. Rất nhiều bạn trẻ gặp phải tình trạng dù thanh địa chỉ đã hiển thị giao thức HTTPS nhưng biểu tượng khóa bảo mật vẫn bị gạch chéo hoặc biến thành màu vàng cảnh báo. Nguyên nhân chính xuất phát từ lỗi nội dung hỗn hợp (Mixed Content) - một sự cố cực kỳ phổ biến khiến nỗ lực SEO của bạn bị suy giảm nghiêm trọng mà không hề hay biết.

1. Tầm quan trọng của HTTPS và nguyên nhân phổ biến khiến web bị lỗi SSL

Chứng chỉ SSL (Secure Sockets Layer) mã hóa toàn bộ dữ liệu truyền tải giữa máy chủ web và trình duyệt người dùng, đảm bảo các thông tin nhạy cảm như mật khẩu hay thông tin thanh toán không bị đánh cắp. Từ năm 2014, Google đã chính thức xác nhận HTTPS là một tín hiệu xếp hạng hàng đầu trong SEO. Khi bạn cài đặt chứng chỉ miễn phí Let's Encrypt qua các bảng quản trị cPanel, DirectAdmin hoặc lệnh Certbot trên VPS NGINX/Apache, toàn bộ lưu lượng truy cập sẽ được mã hóa chuẩn TLS. Mặc dù Let's Encrypt chỉ có thời hạn 90 ngày, các công cụ tự động gia hạn (auto-renew) sẽ giúp hệ thống vận hành liên tục mà không tốn chi phí.

Chưa cài HTTPS hoặc bị mixed content
Chưa cài HTTPS hoặc bị mixed content

Cảnh báo bảo mật nghiêm trọng

Từ các phiên bản gần đây, Google Chrome sẽ tự động chặn các lượt gửi biểu mẫu (form submit) không mã hóa và hiển thị màn hình cảnh báo đỏ tràn màn hình nếu website của bạn yêu cầu nhập dữ liệu cá nhân trên giao thức HTTP.

2. Lỗi Mixed Content (Nội dung hỗn hợp) là gì và tại sao lại xuất hiện?

Lỗi Mixed Content xuất hiện khi một trang web HTML được tải thành công qua kết nối bảo mật HTTPS, nhưng lại yêu cầu các tài nguyên phụ thuộc như hình ảnh, tệp CSS, JavaScript hoặc iframe thông qua đường dẫn HTTP không bảo mật. Trình duyệt xem đây là một rủi ro an ninh nghiêm trọng vì kẻ tấn công có thể can thiệp vào các tài nguyên HTTP này để thực hiện đòn tấn công Man-in-the-Middle (MITM) hoặc chèn mã độc vào trang. Có hai dạng Mixed Content chính: Passive Mixed Content (chỉ gồm tệp tĩnh như ảnh, video - trình duyệt thường vẫn hiển thị nhưng cảnh báo) và Active Mixed Content (tệp script, stylesheet, iframe - bị trình duyệt chặn hoàn toàn).

  • Đường dẫn hình ảnh được dán cứng (hardcoded) dạng http:// trong bài viết hoặc giao diện.
  • Các tệp CSS và JavaScript từ CDN bên ngoài chưa hỗ trợ hoặc chưa chuyển sang HTTPS.
  • Thiết lập URL trong cài đặt hệ thống (Database / wp_options) vẫn ghi nhớ tiền tố http://.
  • Các đoạn mã nhúng iframe như bản đồ Google Maps, video YouTube cũ sử dụng giao thức chưa mã hóa.

3. Hướng dẫn sửa lỗi Mixed Content và cài đặt Let's Encrypt từng bước

Bước đầu tiên để khắc phục sự cố là thay đổi triệt để các đường dẫn HTTP cứng (hardcoded) trong cơ sở dữ liệu sang HTTPS. Đối với nền tảng WordPress, sinh viên có thể tận dụng các plugin mạnh mẽ như Better Search Replace hoặc công cụ lệnh WP-CLI với câu lệnh "wp search-replace http://yourdomain.com https://yourdomain.com". Việc quét lại toàn bộ bảng wp_posts, wp_postmeta và wp_options đảm bảo các tệp hình ảnh được tải từ thư viện phương tiện không còn chứa tiền tố HTTP cũ. Đối với bài tập mã nguồn thuần PHP hoặc Node.js, bạn cần kiểm tra trực tiếp các tệp template header, footer và file cấu hình môi trường để cập nhật BASE_URL chính xác.

Chưa cài HTTPS hoặc bị mixed content
Chưa cài HTTPS hoặc bị mixed content

Sau khi chuẩn hóa dữ liệu, bước tiếp theo là thiết lập chuyển hướng bắt buộc (Force HTTPS 301 Redirect) ở cấp độ máy chủ để chuyển mọi truy cập từ giao thức HTTP cũ sang HTTPS. Nếu sử dụng Apache, bạn chỉ cần chèn cấu hình rewrite vào tệp .htaccess với điều kiện RewriteCond %{HTTPS} off và RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]. Nếu chạy NGINX trên server, hãy cấu hình block server cho cổng 80 chuyển hướng trực tiếp tới HTTPS bằng cú pháp return 301 https://$host$request_uri;. Việc cấu hình chuyển hướng 301 chuẩn xác giúp dòng chảy sức mạnh liên kết (link juice) của trang web không bị đứt gãy và bảo toàn chỉ số SEO.

💡 Mẹo xử lý nhanh bằng HTTP Header

Bạn có thể thêm header 'Content-Security-Policy: upgrade-insecure-requests;' vào tệp cấu hình máy chủ. Header này ra lệnh cho trình duyệt tự động nâng cấp mọi yêu cầu HTTP sang HTTPS trước khi tải tài nguyên.

4. Quy trình kiểm tra toàn diện bảo mật SSL cho Website

Để phát hiện triệt để lỗi Mixed Content còn sót lại, trình duyệt Google Chrome cung cấp công cụ Developer Tools vô cùng hữu ích. Bạn chỉ cần bấm phím F12, chuyển sang tab Console và tải lại trang; mọi tài nguyên HTTP bị chặn hoặc cảnh báo sẽ hiển thị chi tiết màu đỏ kèm theo dòng lệnh gây lỗi. Ngoài ra, việc kết hợp sử dụng phần mềm Screaming Frog SEO Spider để cào toàn bộ website giúp bạn lập danh sách đầy đủ tất cả URL bị dính lỗi nội dung hỗn hợp trên quy mô lớn. Hãy kết hợp kiểm tra độ mạnh SSL bằng SSL Labs Server Test để đạt điểm A+ bảo mật cho website.

Hoạt động

Checklist chuyển đổi HTTPS chuẩn SEO không lỗi

0%
Mini Quiz

Loại Mixed Content nào gây nguy hiểm nhất và thường bị trình duyệt hiện đại chặn hoàn toàn ngay lập tức?

Khảo sát nhanh

Bạn thường dùng công cụ nào nhất để khắc phục lỗi Mixed Content trên website của mình?

Việc tối ưu HTTPS và xử lý triệt để lỗi Mixed Content không chỉ là bài thực hành kỹ thuật bắt buộc cho lập trình viên web mà còn là nền tảng cốt lõi cho mọi chiến dịch SEO thành công. Một website bảo mật toàn diện giúp nâng cao uy tín thương hiệu, cải thiện điểm trải nghiệm người dùng (UX) và tạo đà tăng trưởng thứ hạng bền vững trên bảng xếp hạng Google. Đội ngũ kỹ thuật tại LuckySEO khuyến nghị các bạn sinh viên nên hình thành thói quen kiểm tra SSL ngay từ giai đoạn triển khai dự án thử nghiệm để tránh các phiền phức và thiệt hại lưu lượng truy cập khi vận hành thực tế.

Cần triển khai SEO bài bản?

Đội ngũ LuckySEO đồng hành cùng bạn từ audit đến tăng trưởng bền vững.

Nhận tư vấn miễn phí