Làm thế nào để cài đặt SSL và HTTPS cho WordPress?
Một trong những việc quan trọng giúp đảm bảo cho blog/ website WordPress của bạn luôn an toàn là cài đặt một chứng chỉ SSL hợp lệ. Điều này sẽ cho phép người dùng của bạn trao đổi thông tin với blog/ website thông qua một giao thức được mã hóa an toàn. Cài đặt và cấu hình WordPress để sử dụng các giao thức mã hóa an toàn là một việc tương đối nhẹ nhàng, không phải là quá khó. Nhưng nó đòi hỏi bạn phải quyết định được việc bao giờ thì nên sử dụng SSL?
Tham khảo thêm: Cài đặt CloudFlare SSL miễn phí cho blog WordPress
SSL là gì?
SSL là tiêu chuẩn để trao đổi thông tin một cách an toàn, thông qua mã hóa thông tin giữa một blog/ website và trình duyệt. Tôi sẽ không đi sâu vào chi tiết kỹ thuật và cách thức hoạt động của SSL, nhưng nói một cách ngắn gọn thì SSL là một cách để thiết lập một kết nối tin cậy giữa máy chủ và trình duyệt web. Bản chất của mối quan hệ này là máy chủ sẽ mã hóa dữ liệu tại chỗ trước khi chuyển nó tới trình duyệt web, theo một cách mà chỉ người nhận mới có thể giải mã nó.
Phương pháp này khá an toàn trước một thực tế là bất kỳ dữ liệu nào được chuyển qua internet đều có thể bị ngăn chặn bất cứ lúc nào bởi một hacker hay một cơ quan an ninh chính phủ. Bằng cách gửi dữ liệu mã hóa, chúng ta sẽ đảm bảo rằng bất cứ ai, không phải là người dùng, nhận được dữ liệu chuyển giao từ máy chủ, thì những điều họ nhận được là những thứ hoàn toàn vô nghĩa. Nó giúp bảo mật thư tín, số thẻ tín dụng, tài khoản ngân hàng và tất cả các dữ liệu cá nhân khác.
Để sử dụng SSL, yêu cầu máy chủ của bạn phải được cài đặt sẵn một chứng chỉ SSL hợp lệ. Chứng chỉ SSL, thường được mua tại các nhà cung cấp dịch vụ hosting, cung cấp cho trình duyệt web các chi tiết quan trọng về việc bảo mật trang web của bạn. Trong hầu hết các trình duyệt web, khi bạn truy cập một trang web an toàn, bạn sẽ thấy một biểu tượng ổ khóa hoặc tương tự trong thanh địa chỉ, hiển thị cho bạn thông tin chi tiết về chứng chỉ SSL.
SSL cần phải có trên tất cả các trang web thương mại điện tử và được khuyến khích sử dụng bất cứ khi nào có thông tin nhạy cảm được trao đổi, bao gồm cả mật khẩu. Tôi sẽ không đề cập đến quá trình thêm chứng chỉ cho gói hosting của bạn, cũng như sực khác nhau giữa các nhà cung cấp hosting. Một trong những dấu hiệu của một công ty cung cấp hosting WordPress chất lượng là họ cho phép bạn thiết lập chứng chỉ SSLcủa mình một cách dễ dàng.
Sau khi chứng chỉ SSL được cài đặt, khi ai đó truy cập trang web của bạn, họ sẽ có thể truy cập thông qua HTTP “an toàn”, hay còn gọi là HTTPS. Tôi nói “họ sẽ có thể” mà không phải “họ sẽ”, bởi vì chỉ thêm chứng chỉ thôi là không đủ. Bạn sẽ cần phải cấu hình WordPress để buộc khách truy cập sử dụng HTTPS.
Khi chúng ta nói đến việc “sử dụng SSL“, có nghĩa là hoạt động trao đổi thông tin giữa máy chủ và trình duyệt đang diễn ra thông qua giao thức HTTPS thay vì giao thức HTTP không được đảm bảo. Để làm được như vậy, đòi hỏi bạn phải có một chứng chỉ SSL hợp lệ.
Nên sử dụng HTTPS ở đâu?
Bạn có thể bắt buộc khách truy cập trang web của bạn phải sử dụng HTTPS khi đăng nhập, khi sử dụng bảng điều khiển, trên một bộ phận hoặc tất cả các phần của trang web. Có hai cách để nhìn nhận về vấn đề này. Một là sử dụng nó chỉ khi thực sự cần thiết, có nghĩa là bạn không đặt rào cản thêm xác thực về quyền truy cập vào các giao tiếp không nhạy cảm. Hai là sử dụng SSL mọi lúc, mọi nơi.
Gần đây Google đã thông báo rằng họ sẽ bắt đầu xem xét sử dụng HTTPS trong việc xếp hạng tìm kiếm. Điều này có nghĩa rằng việc sử dụng HTTPS sẽ không chỉ mang lại lợi ích an ninh mà còn thúc đẩy SEO.
Tuy nhiên, nhược điểm của việc sử dụng SSL ở khắp mọi nơi là giao thức truyền tải HTTPS chậm hơn so với giao thức truyền tải HTTP không an toàn. Điều này là do các dữ liệu phải được mã hóa trước khi gửi đi và giải mã trước khi được hiển thị. Mất thêm thời gian xử lý cho cả máy chủ gửi dữ liệu và trình duyệt web nhận dữ liệu.
Thời gian tải trang cũng rất quan trọng với trải nghiệm người dùng và SEO. Vậy nên, bạn phải cân nhắc xem liệu dùng SSL và không dùng SSL, cái nào có lợi hơn?
Thiết lập SSL trong WordPress bằng phương pháp thủ công
Có một hằng số mà bạn có thể thiết lập trong tập tin wp-config.php để bắt buộc sử dụng một kết nối an toàn trong bảng quản trị WordPress. FORCE_SSL_ADMIN sẽ yêu cầu một chứng chỉ SSL hợp lệ và HTTPS sẽ được sử dụng để truy cập vào bất kỳ thành phần nào của WordPress Dashboard.
Hằng số này là false theo mặc định. Bạn có thể kích hoạt nó bằng cách thêm dòng mã sau vào tập tin wp-config.php:
define( ‘FORCE_SSL_ADMIN’, true );
Có một bài viết tuyệt vời trong codex mà bạn nên đọc nếu muốn cấu hình HTTPS trên trang web của mình. Chẳng hạn như làm thế nào để yêu cầu SSL trên tất cả các trang front-end. Cá nhân, nếu tôi không thể làm tất cả mọi thứ tôi cần với đoạn mã trong wp-config.php, tôi sẽ sử dụng một plugin để làm điều đó. Đó cũng sẽ là những gì tôi sẽ giới thiệu trong phần tiếp theo.
Sử dụng HTTPS WordPress plugin
Một plugin miễn phí có tên gọi là WordPress HTTPS (SSL) giúp tất cả các thiết lập kể trên trở nên rất dễ dàng. Plugin này chưa được cập nhật trong một thời gian khá dài và hiện mới chỉ được thử nghiệm lên đến phiên bản WordPress 3.5.2, nhưng tôi có thể khẳng đinh với các bạn là nó hoạt động tốt trên cả WordPress 3.9 và WordPress 4.0.
Plugin này có 2 tính năng chính. Nó cho phép bạn cài đặt các thiết lập global SSL cho trang web đơn hoặc trang web trên một hệ thống multi-site. Nếu bạn không thể bắt buộc dùng SSL cho tất cả các nội dung thì plugin này cũng cho phép bạn thiết lập HTTPS cho các bài viết hoặc các trang cụ thể.
Cấu hình các thiết lập global rất dễ dàng. Từ màn hình quản trị của plugin, nó sẽ cho phép bạn lựa chọn cho trang web đơn hoặc từng trang web trên mộ hệ thống multi-site, yêu cầu HTTPS cho quản trị viên, cho toàn bộ trang web và loại bỏ nội dung không an toàn.
Plugin này cũng giúp chèn thêm một metabox vào trình biên tập bài viết, cho phép bạn thiết lập bắt buộc sử dụng HTTPS cho các bài viết hoặc trang. Điều này rất hữu ích nếu bạn chỉ có một vài trang cần phải trao đổi thông tin an toàn, chẳng hạn như là một trang quản lý tài khoản hoặc một trang bán hàng.
Bạn có đang sử dụng SSL cho trang web của mình? Hãy chia sẻ với chúng tôi ý kiến của bạn bằng cách sử dụng khung bình luận bên dưới.