Hướng dẫn chuyển từ HTTP sang HTTPS cho WordPress site

Bạn đang tìm cách chuyển từ HTTP sang HTTPS và cài đặt chứng chỉ SSL cho trang web WordPress  của mình? Bắt đầu từ tháng 7 năm 2018 Google đã thông báo rằng trình duyệt Chrome sẽ đánh dấu các trang web không có SSL là không an toàn. Trong bài viết này tôi sẽ chia sẻ cách chuyển từ HTTP sang HTTPS và thêm chứng chỉ SSL cho WordPress site của bạn.

Nếu bạn là người mới đừng lo lắng vì bạn không biết HTTPS hoặc SSL là gì. Trong bài viết này tôi sẽ giải thích một cách đơn giản giúp bạn có thể hiểu được các khái niệm mới mẻ này.

HTTPS là gì?

HTTPS là phương pháp mã hóa bảo mật kết nối giữa trình duyệt của người dùng với máy chủ web của bạn. Phương pháp mã hóa này gây khó khăn hơn cho tin tặc trong việc nghe lén trên kết nối.

Hàng ngày chúng ta chia sẻ các thông tin cá nhân với các website khác nhau. Đó có thể là thông tin đăng ký mua hàng hay đơn giản chỉ là thông tin đăng nhập đến các thông tin nhạy cảm như thông tin thanh toán, thông tin về thẻ tín dụng.

Nếu bạn sử dụng giao thức HTTP bình thường, các thông tin này có thể sẽ bị hack bởi các tin tặc. Để bảo vệ việc truyền dữ liệu cần tạo kết nối an toàn. Vì vậy SSL hay HTTPS ra đời để khắc phục mối hiểm họa tiềm ẩn này.

Mỗi trang web được cấp chứng chỉ SSL duy nhất để nhận dạng. Nếu máy chủ yêu cầu HTTPS, và chứng chỉ của máy chủ không khớp thì hầu hết các trình duyệt hiện đại sẽ cảnh báo người dùng.

Giờ bạn sẽ tự hỏi tại sao tôi cần phải chuyển WordPress site của mình từ HTTP sang HTTPS đặc biệt khi đó là một blog đơn giản hoặc trang web doanh nghiệp nhỏ không thực hiện các khoản thanh toán nào?

Tại sao bạn cần chuyển từ HTTP sang HTTPS và cài đặt SSL?

Năm ngoái, Google đã công bố một kế hoạch nhằm cải thiện an ninh web tổng thể bằng cách khuyến khích chủ sở hữu trang web thực hiện chuyển đổi từ HTTP sang HTTPS. Là một phần của kế hoạch này, trình duyệt web Chrome phổ biến của họ sẽ đánh dấu tất cả các trang web không có chứng chỉ SSL là “Không an toàn” bắt đầu từ tháng 7 năm 2018.

Là một phần của thông cáo, Google ưu ái cho các trang web có SSL. Cụ thể là nếu trang web có SSL sẽ nhận được các lợi ích hơn về SEO và có thứ hạng cao hơn. Kể từ năm ngoái một lượng lớn các trang web đã chuyển từ HTTP sang HTTPS.

Google đã từ từ tung ra cảnh báo “Không an toàn” trong trình duyệt Chrome. Ví dụ: nếu ai đó truy cập trang web HTTP bằng cửa sổ ẩn danh, trang web đó sẽ được đánh dấu là Không an toàn. Nếu ai đó truy cập trang web HTTP ở chế độ thông thường và cố gắng điền vào biểu mẫu liên hệ hoặc biểu mẫu khác thì trang web sẽ được đánh dấu là không an toàn.

Khi độc giả và khách hàng của bạn nhìn thấy thông báo này, nó mang lại cho họ một ấn tượng xấu đối với doanh nghiệp của bạn.

Đây là lý do tại sao tất cả các trang web cần phải chuyển từ HTTP sang HTTPS và cài đặt SSL ngay lập tức.

Chưa kể, nếu bạn muốn chấp nhận thanh toán trực tuyến trên trang web thương mại điện tử của mình, thì bạn cần SSL.

Hầu hết các công ty thanh toán như Stripe, PayPal Pro, Authorize.net, v.v. sẽ yêu cầu bạn phải có kết nối an toàn trước khi chấp nhận thanh toán.

Yêu cầu để sử dụng HTTPS / SSL trên một trang web WordPress

Các yêu cầu để sử dụng SSL trong WordPress không quá cao. Tất cả những gì bạn cần làm là mua chứng chỉ SSL và bạn có thể đã có nó miễn phí.

Các công ty lưu trữ WordPress tốt nhất đang cung cấp chứng chỉ SSL miễn phí cho tất cả người dùng của họ. Tôi dùng Hawkhost và được cung cấp chứng chỉ SSL miễn phí. Bạn có thể đọc lại bài viết Hướng dẫn Cài đặt chứng chỉ SSL miễn phí cho WordPress site để biết thêm chi tiết.

Nếu nhà cung cấp dịch vụ hosting của bạn không cung cấp chứng chỉ SSL miễn phí, bạn cần phải mua chứng chỉ SSL.

Khi bạn đã mua chứng chỉ SSL, bạn sẽ cần yêu cầu nhà cung cấp dịch vụ lưu trữ cài đặt nó cho bạn.

Thiết lập WordPress để có thể sử dụng HTTPS và SSL

Sau khi bạn đã kích hoạt chứng chỉ SSL cho tên miền của mình, bạn cần phải thiết lập WordPress để có thể sử dụng giao thức HTTPS và SSL cho trang web của mình.

Trong bài viết này, tôi sẽ chia sẽ 02 cách để giúp bạn làm được điều đó. Bạn chỉ cần chọn một trong hai cách phù hợp với mình nhất.

Cách 1: Thiết lập HTTPS/SSL cho WordPress bằng cách sử dụng plugin

Cách này rất đơn giản, nếu bạn là người mới nên sử dụng cách này.

Đầu tiên bạn cần cài đặt và kích hoạt plugin Really Simple SSL. Nếu bạn chưa biết cách cài đặt và kích hoạt plugin, có thể xem lại bài viết Hướng dẫn cài đặt và quản lý plugin trong WordPress.

Sau khi kích hoạt, bạn cần truy cập vào trang Settings » SSL. Plugin sẽ kiểm tra để tự tìm thấy chứng chỉ SSL nếu nó đã được kích hoạt và nó sẽ thiết lập WordPress để dùng HTTPS/SSL.

enable ssl on yoursite

Plugin sẽ xử lý mọi thứ kể cả lỗi Mixed Content. Dưới đây là những gì plugin xử lý:

  • Kiểm tra chứng chỉ SSL.
  • Thiết lập WordPress dùng https trong URLs.
  • Thiết lập chuyển hướng từ HTTP sang HTTPS.
  • Tìm kiếm các URL trong nội dung của bạn vẫn tải từ các nguồn HTTP không an toàn và cố gắng khắc phục chúng.
Plugin cố sửa lỗi Mixed Content bằng cách sử dụng kỹ thuật đệm đầu ra. Nó có thể có tác động tiêu cực về hiệu suất vì nó thay thế nội dung trên trang web khi tải trang. Tác động này chỉ được thấy khi trang được tải lần đầu tiên và nó sẽ giảm thiểu đáng kể nếu bạn sử dụng plugin tạo bộ nhớ đêm.

Mặc dù plugin cho biết bạn có thể giữ SSL và tắt plugin một cách an toàn nhưng điều đó không hoàn toàn đúng. Bạn sẽ phải để plugin hoạt động xuyên suốt vì nếu tắt plugin sẽ gây phát sinh lỗi mixed content.

Cách 2: Cài đặt HTTPS/SSL cho WordPress một cách thủ công

Phương pháp này yêu cầu bạn khắc phục các vấn đề theo cách thủ công và chỉnh sửa các tập tin trong WordPress. Tuy phức tạp hơn cách 1 nhưng đây là cách tối ưu hóa lâu dài và hiệu quả hơn.

Nếu bạn thấy phương pháp này khó, bạn có thể nhờ những người có kinh nghiệm về WordPress hoặc sử dụng phương pháp đầu tiên thay thế.

Đầu tiên bạn cần truy cập vào trang Settings » General. Tại đây bạn cần cập nhật các trường WordPress Address (URL) và Site Address (URL) của bạn bằng cách thay thế http bằng https.

general setting ssl

Đừng quên nhấp vào nút “Save changes” để lưu lại các thiết lập của bạn.

Sau khi lưu lại các thiết lập, WordPress sẽ đăng xuất và bạn sẽ được yêu cầu đăng nhập lại.

Tiếp theo, bạn cần thiết lập chuyển hướng WordPress từ HTTP sang HTTPS bằng cách thêm đoạn code bên dưới vào tập tin .htaccess.

[php]<IfModule mod_rewrite.c>;
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
</IfModule>[/php]

Đừng quên thay thế https://www.example.com bằng tên miền của bạn.

Nếu bạn đang sử dụng máy chủ Ngix (Rất ít người dùng), bạn cần thêm đoạn code bên dưới để chuyển hướng từ HTTP sang HTTPS trong tập tin cấu hình của bạn.

[php]server {
listen 80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}[/php]

Đừng quên thay thế https://www.example.com bằng tên miền của bạn.

Bằng cách làm theo các bước này, bạn sẽ tránh được lỗi WordPress HTTPS không hoạt động vì giờ WordPress sẽ tải toàn bộ trang web của bạn bằng cách sử dụng HTTPS.

Nếu bạn muốn buộc SSL và HTTPS trên khu vực quản trị WordPress hoặc các trang đăng nhập, thì bạn cần phải cấu hình SSL trong tệp wp-config.php.

Chỉ cần thêm đoạn mã sau vào dòng “That’s all, stop editing!” Trong tệp wp-config.php của bạn:

[php]define(‘FORCE_SSL_ADMIN’, true);[/php]

Đoạn code trên cho phép WordPress buộc SSL/HTTPS trong khu vực quản trị WordPress. Nó cũng hoạt động với WordPress Multisite.

Khi bạn thực hiện việc này, trang web của bạn hiện đã được thiết lập đầy đủ để sử dụng SSL / HTTPS, nhưng bạn vẫn sẽ gặp lỗi Mixed Content.

Lỗi này phát sinh do các nguồn (hình ảnh, JavaScript, CSS…) vẫn đang tải bằng giao thức không bảo mật HTTP trong các URLs. Nếu lỗi này xảy ra, bạn sẽ không thể thấy biểu tượng khóa móc an toàn màu xanh trong thanh địa chỉ của trình duyệt.

Nhiều trình duyệt hiện đại sẽ tự động chặn các tập lệnh và tài nguyên không an toàn. Bạn có thể thấy biểu tượng khóa móc nhưng có thông báo về nó trong thanh địa chỉ của trình duyệt.

Bạn có thể sử dụng công cụ Inspect để tìm ra nội dung nào được phân phối qua giao thức không an toàn. Lỗi hỗn hợp nội dung sẽ được hiển thị dưới dạng cảnh báo trong bảng điều khiển với chi tiết cho từng mục nội dung hỗn hợp.

Bạn sẽ có thể nhận ra rằng đa số các URL đó là hình ảnh, CSS, JavaScript… do các themes và plugins tạo ra.

Khắc phục lỗi nội dung hỗn hợp trong cơ sở dữ liệu WordPress

Đa số các URL gây ra lỗi các hình ảnh, tập tin, tập tin nhúng và các dữ liệu khác được lưu trữ trong cơ sở dữ liệu. Hãy sửa chúng trước.

Tất cả những gì bạn cần làm là tìm giao thức http trong tất cả các URL cũ sau đó thay nó bằng giao thức https.

Bạn có thể dễ dàng thực hiện việc này bằng cách cài đặt và kích hoạt plugin Better Search Replace.

Sau khi kích hoạt bạn cần truy cập vào trang Tools » Better Search Replace. Bên dưới trường “Search”, bạn cần thêm cần URL website của mình với http. Sau đó thêm URL website với https trong trường “Replace”.

Phía bên dưới, bạn sẽ có thể nhìn thấy tất cả các bảng trong cơ sở dữ liệu WordPress của mình. Bạn cần chọn tất cả các bảng này để tiến hành kiểm tra một cách kỹ lưỡng.

Cuối cùng, hãy bỏ chọn hộp kiểm “Run as dry run?”. Sau đó nhấp vào nút Run Search/Replace.

Giờ plugin sẽ tìm kiếm trong cơ sở dữ liệu WordPress của bạn các URL bắt đầu bằng http và thay thế chúng bằng https. Quá trình này có thể mất một chút thời gian tuỳ vào kích thước của cơ sở dữ liệu.

Sửa lỗi nội dung hỗn hợp trong WordPress Theme

Một nguyên nhân khác gây nên lỗi nội dung hỗn hợp là WordPres Theme của bạn. Các WordPress Theme được code tốt sẽ không gây ra vấn đề này.

Trước tiên, bạn hãy sử dụng công cụ Inspect để tìm nguồn và nơi chúng được tải. Sau đó bạn cần tìm chúng trong WordPress Theme và thay thế http bằng https. Điều này có thể hơi khó một chút nếu bạn là người mới vì bạn không thể biết tập tin nào chứa các URL này.

Sửa lỗi nội dung hỗn hợp do plugin gây ra

Một số tài nguyên nội dung hỗn hợp sẽ được tải bởi WordPress plugin. Các WordPress plugin được code tốt sẽ không gây ra lỗi này.

Bạn không nên chỉnh sửa tập tin của plugin. Thay vào đó bạn cần liên hệ và thông báo cho tác giả của plugin biết. Nếu họ không có phản hồi hoặc không thể sửa chữa, bạn nên sử dụng plugin khác có cùng chức năng.

Nếu vì một lý do nào đó, bạn vẫn gặp lỗi nội dung hỗn hợp, bạn nên tạm thời sử dụng plugin Really Simple SSL để người dùng không bị ảnh hưởng trong khi bạn khắc phục sự cố.

Gửi trang web HTTPS của bạn tới Google Search Console

Các công cụ tìm kiếm như Google xem các trang web http và https là hai trang khác nhau. Vì thế bạn nên thông báo cho Google biết trang web của bạn đã di chuyển để tránh gặp các vấn đề về SEO.

Để làm được điều đó bạn cần truy cập vào tài khoản Google Search Console của mình và nhấp vào nút “Add a Property”.

google search console add a property

Một cửa sổ popup hiện ra, bạn cần thêm địa chỉ URL mới với giao thức https.

add a property popup

Sau đó, Google sẽ yêu cầu bạn xác thực quyền sở hữu trang web của bạn. Có các cách khác nhau để làm điều đó, chọn một trong các phương pháp xác thực và bạn sẽ được hướng dẫn để xác minh trang web của mình.

alternate methods

Sau khi xác minh, Google sẽ bắt đầu hiển thị báo cáo kết quả tìm kiếm của bạn tại đây.

Bạn cũng cần phải đảm bảo rằng cả hai phiên bản http và https đều được thêm vào Search Console.

Khi bạn đã thêm hai phiên bản, bạn cần truy cập vào phiên bản http và nhấp vào menu Settings. Tại đây bạn cần chọn tuỳ chọn “Change of Site Address”.

change of address

Google sẽ tự động chọn trang web mới của bạn trong trường bên dưới, nếu không bạn cần phải chọn phiên bản https của trang web và sau đó gửi yêu cầu thay đổi địa chỉ.

Điều này cho Google biết rằng bạn muốn phiên bản https của trang web là phiên bản chính. Kết hợp với chuyển hướng 301 mà bạn đã thiết lập trước đó, Google sẽ chuyển thứ hạng tìm kiếm của bạn sang phiên bản https và bạn rất có thể sẽ thấy các cải thiện trong thứ hạng tìm kiếm của mình.

Tôi hy vọng bài viết này sẽ giúp bạn biết cách chuyển từ HTTP sang HTTPS  trong WordPress.

Nếu bạn thấy thích bài viết này đừng quên Like và Share!

Hẹn gặp lại bạn trong các bài viết tiếp theo./.

Đăng ký nhận bài viết mới nhất

Hãy đăng ký nhận tin để nhận được những nội dung thú vị và tuyệt vời!

Để lại bình luận