Hướng dẫn chuyển từ HTTP sang HTTPS không bị mất thứ hạng tìm kiếm trên Google.

Dạo gần đây, phong trào chuyển từ HTTP sang HTTPS diễn ra rất rầm rộ. Khá nhiều bạn có liên hệ hỏi tôi về việc chuyển sang HTTPS có bị mất thứ hạng trên Google hay không và chuyển như thế nào thì không bị mất thứ hạng. Thực ra, việc chuyển từ HTTP sang HTTPS không làm giảm thứ hạng tìm kiếm của bạn mà thậm chí còn tăng nếu bạn làm đúng cách. Bởi vì Google đã công bố họ sẽ ưu tiên các blog/ website sử dụng giao thức HTTPS rồi mà. Và để giải đáp thắc mắc của tất cả mọi người, hôm nay tôi sẽ hướng dẫn cho các bạn những bước cơ bản để chuyển sang sử dụng HTTPS đối với blog/ website WordPress một cách chuẩn nhất.
Tham khảo thêm:
- Chrome cảnh báo không an toàn đối với website sử dụng HTTP
- Sửa lỗi SSL trong WordPress một cách đơn giản
Chuyển từ HTTP sang HTTPS mà không bị mất thứ hạng SEO
1. Cài SSL trên hosting hoặc VPS. Các bạn có thể sử dụng SSL miễn phí như Let’s Encrypt hoặc mua các loại SSL trả phí như Positive SSL.
Tham khảo thêm:
- Hướng dẫn cài Positive SSL trên hosting có cPanel
- Hướng dẫn cài SSL miễn phí với AutoSSL trên cPanel
Sau khi cài thành công SSL lên host, có 2 cách khác nhau để cài HTTPS cho WordPress:
Phương pháp thủ công
Phức tạp và không dành cho những người không am hiểu về kỹ thuật, dễ bị lỗi trong quá trình thay thế dữ liệu trong database, do đó chúng tôi không khuyên dùng.
Lưu ý:
- Hướng dẫn này chỉ dành cho website sử dụng mã nguồn WordPress chạy trên nền web server Apache hoặc LiteSpeed (hỗ trợ file
.htaccess). - Hãy backup kỹ càng trước khi làm để tránh các trường hợp đáng tiếc có thể xảy ra.
2. Export database của blog/ website WordPress về máy tính thông qua phpMyAdmin. Sử dụng phần mềm NotedPad++ để mở file ra, tìm kiếm và thay thế toàn bộ link từ HTTP sang HTTPS. Drop (xóa) toàn bộ các table của database cũ trên phpMyAdmin sau đó import file (.sql) đã chỉnh sửa lên. Các bạn cũng có thể làm việc này thông qua các queries trên phpMyAdmin.
Lưu ý: bước này có thể làm mất một số thiết lập của plugin Yoast SEO cũng như các widget. Vì vậy, các bạn nên copy các thiết lập và lưu ở đâu đó trước khi làm để sau này tiện cấu hình lại.
3. Thêm đoạn code sau đây vào đầu file .htaccess trong thư mục gốc của WordPress.
# Redirect all links from HTTP to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]
Tác dụng của đoạn code này là tự động redirect 301 toàn hộ link HTTP sang HTTPS.
Sử dụng plugin Really Simple SSL
Với bước 2 và 3 của phương pháp thủ công, các bạn có thể thực hiện đơn giản hơn bằng cách sử dụng plugin Really Simple SSL. Xem hướng dẫn chi tiết trong bài viết “Cài HTTPS cho WordPress trong nháy mắt với Really Simple SSL“. Phương pháp này an toàn gần như tuyệt đối, bạn không cần phải backup dữ liệu, được chúng tôi khuyên dùng.
4. Truy cập vào tài khoản Google Search Console (hay còn gọi là Google Webmaster Tools) của bạn, khai báo thêm một tên miền dạng HTTPS. Nhớ giữ nguyên tên miền dạng HTTP trước đó nhé. Đừng quên làm đầy đủ các thao tác giống như bạn đã làm với tên miền HTTP (chẳng hạn như thêm sitemaps, khai báo robots.txt, nhắm mục tiêu quốc tế…).

5. Truy cập vào tài khoản Google Analytics (nếu bạn có sử dụng) => Quản trị => Cài đặt thuộc tính => URL mặc định và chuyển nó về dạng HTTPS.

Kéo xuống dưới cùng, click vào nút Điều chỉnh Search Console.

Click tiếp vào nút Chỉnh sửa.

Chọn đúng trang web có link dạng HTTPS để liên kết với tài khoản Google Analytics. Click vào nút Lưu để hoàn tất.

Tất cả chỉ đơn giản vậy thôi. Việc còn lại là chờ đợi Google bots thu thập dữ liệu và tự động chuyển hết link từ HTTP sang HTTPS trên bảng kết quả tìm kiếm. Chúc các bạn thành công!
Mọi thắc mắc liên quan đến việc chuyển từ HTTP sang HTTPS cho blog/ website WordPress, xin vui lòng gửi vào khung bình luận bên dưới để được giải đáp.
Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. :)





Bài viết này rất hữu ích. Cám ơn wpcanban
Minh cài xong bị lỗi như này : Mixed Content: The page at ‘https://bacminhcanh.com/’ was loaded over HTTPS, but requested an insecure font ‘http://bacminhcanh.com/’. This request has been blocked; the content must be served over HTTPS.
DevTools failed to parse SourceMap: https://bacminhcanh.com/wp-content/themes/minhcanh/css/bootstrap.css.map
Tài nguyên trên site của bạn chưa hoàn toàn chạy trên giao thức HTTPS đó mà. Vẫn còn một số thành phần chạy trên giao thức HTTP. Cách duy nhất là mở source theme và plugin ra rồi tìm và sửa link HTTP thành HTTPS thôi. :P
Anh ơi cho em hỏi, Trang web của em hiện đã mua tên miền HTTPS và cài đặt xong hết rồi nhưng sao khi vào web nó vẫn chuyển về dạng HTTP ạ.
Có khi nào nguyên nhân do config của soucre không ạ.
Bạn đã thiết lập redirect từ HTTP về HTTPS chưa? Nếu chưa thì thử cài plugin Really Simple SSL xem sao. Trên wpcanban.com có bài hướng dẫn rồi đó. :P
Em muốn cài trên window iis. Và đã thiết lập sang HTTPS rồi nhưng khi vào localhost nó vẫn không chuyển sang HTTPS được. Có khi nào phải chỉnh sửa lại code không anh nhỉ.
Cài plugin Really Simple SSL là được mà. :P
A Hiếu sao cái đoạn code này bỏ vào website e nó chẳng có việc gì mới xảy ra hết vậy.
Host của bạn có chạy web server Apache hoặc LiteSpeed không? Nếu là NginX thì file .htaccess không có tác dụng đâu. :P
Em sử dụng Hawkhost, thấy ở phía trong file cũng có mấy đoạn code tương tự như vậy.
HawkHost thì dùng LiteSpeed. Bạn cài HTTPS bằng plugin hay là cài thủ công? :P
E mới mua chứng chỉ, cài đặt xong hết rồi giờ chỉ cần redirect nó qua nữa thôi, nhưng ko biết cách nào để redirect toàn bộ.
Code mà mình cung cấp dùng để redirect toàn bộ link HTTP sang HTTPS mà. Blog của mình cũng đang dùng code đó đây. Cũng chạy trên HawkHost luôn. Chắc chắn nó bị xung đột với đoạn code nào khác trong file .htaccess của bạn rồi. :P
P/s: để đơn giản hơn, bạn có thể sử dụng plugin Really Simple SSL nhé. :P
Chào anh!
Anh cho em hỏi chút. Khi web e chuyển sang https nhưng google chỉ index 1 vài link dạng https. Các link còn lại vẫn là https. Mặc dù, e viết bài mới sau khi chuyển https mà khi index, bài đó vẫn không có https.
Lỗi này là do đâu? và khắc phục thế nào ạ?
Web e: 24hsport(.)vn
Cảm ơn anh :)
Bạn chuyển qua HTTPS lâu chưa? Có thiết lập redirect 301 từ HTTP sang HTTPS không? :P
Em chuyển được hơn 2 tuần rồi anh ạ. Có 301 tự động chuyển về https. Hôm nay google nó lại bỏ hết index có https rồi ạ! :v
Còn đây là thư GG gửi cho e: “Google phát hiện thấy rằng chứng chỉ SSL/TLS được sử dụng trên https://24hsport.vn/ là tự ký, có nghĩa là chứng chỉ đã được phát hành bởi máy chủ của bạn chứ không phải một Tổ chức phát hành chứng chỉ. Bởi vì chỉ các Tổ chức phát hành chứng chỉ mới được coi là nguồn đáng tin cậy của chứng chỉ SSL/TLS nên hầu hết các trình duyệt không thể tin cậy chứng chỉ của bạn. Ngoài ra, một chứng chỉ tự ký có nghĩa là nội dung của bạn không được xác thực, nội dung có thể bị sửa đổi và bên thứ ba có thể chặn dữ liệu người dùng hoặc hành vi duyệt web của bạn. Do đó, nhiều trình duyệt web sẽ chặn người dùng bằng cách hiển thị cảnh báo bảo mật khi họ truy cập vào trang web của bạn. Điều này được thực hiện để ngăn bên thứ ba chặn hành vi duyệt web của người dùng, có thể xảy ra trên các trang web không an toàn.”
Có phải vì cái này mà nó ko nhận https ko a?
Dùng Self-SSL thì Google nó không chấp nhận là đúng rồi. Mua cái PositiveSSL hoặc dùng Let’s Encrypt ấy. :P
Vâng! Cảm ơn anh! E không rành về mấy cái này lắm. :D
Cảm ơn anh Hiếu, mỗi lần đổi là phải tìm bài này cho bằng được.
Hi Hiếu,
Cảm ơn vì bài viết hữu ích của bạn, mình có đưa link này cho bạn làm web làm đúng các bước như vậy, làm đã được 1 tuần vẫn rất ổn mà đột nhiên hôm nay tất cả mọi từ khoá của bên mình đều biến mất khỏi google, nếu trước đây là top 1,2 trang 1 thì giờ trang 2 cũng không tìm ra. Bạn có biết là do nguyên nhân gì không ạ? Web này mình đã làm SEO được 4 năm nội dung là tự viết không.
Mong giải đáp của bạn ạ.
Cảm ơn bạn.
Thường chuyển từ HTTP sang HTTPS chỉ có thăng hạng từ khóa chứ hiếm khi bị rớt hạng lắm bạn. Vì Google ưu tiên SSL mà. Nếu tự nhiên mất top thì bạn nên kiểm tra lại nguồn backlinks xem sao. Ngoài ra kiểm tra xem domain có dính blacklist/ sandbox không? Có bị Google thông báo lỗi gì liên quan đến bảo mật không?
Anh ơi cho em hỏi em chuyen từ http sanh https su dung dich vụ cloudflare.
Em làm theo cách cài 2 plugin
Really Simple SSL
SSL Insecure Content Fixer
và em cũng đã khai báo thêm một tên miền dạng HTTPS, giữ nguyên tên miền dạng HTTP trước đó.
Em cũng đã add sitemap vào ten mien dạng HTTPS, giờ em còn làm gì nữa không anh? ( có cần fetch lại tất cả các url của tất cả các bài viết cũ không ạ? hay còn phải thêm gì anh?)
Em mới tap tành vs Worpress nen chua hiểu nhiều lắm!
Em cảm ơn anh ạ
Chỉ cần cài plugin Really Simple SSL là được rồi bạn. Không cần cài thêm SSL Insecure Content Fixer đâu. Bạn đã khai báo thêm tên miền HTTPS trong Google Search Console + add sitemap rồi thì việc còn lại là chờ Google index dữ liệu thôi. :)
Dạ vâng ạ, em cảm ơn anh ạ!
Mà cái WordPress Address (URL) với cái Site Address (URL) trong muc setting general cua wp-admin, em không thay đổi đươc http sang https nó có bị sao khong anh nhì?
Từ khóa vẫn giữ nguyên thứ hạng hay phải một thời gian sau mới ổn định hả mọi người
Hầu như vẫn giữ nguyên bạn nha. Có nhảy thì cũng nhảy 1 tí thôi, xong đâu lại vào đấy. :P
Cảm ơn bạn đã chia sẻ, phải cho ngay web sang https
Sau khi mình chuyển thêm webmarter tool của https xong thì mình có nên xóa cái http thương không ad
Bạn nên đợi đến khi traffic tìm kiếm từ HTTP về 0 rồi hãy xóa nhé. Mà xóa hay không cũng vậy cả thôi, không khác gì. :P