Hãy nhìn lại lối sống của bạn.

Chuyển hướng HTTP sang HTTPS cho WordPress không dùng Plugin

3 353.207

- Advertisement -

Từ kinh nghiệm của 1 người đam mê tốc độ, đây là cách để chuyển website WordPress của bạn từ http sang https mà không đụng đến những plugin hoạt động thường trực như là Really Simple SSL.

Đặc điểm của cách làm này:

  • Làm thủ công, mệt hơn, lâu hơn
  • Ổ khoá https hoàn hảo, không chấm thang, không ảnh hưởng đến tốc độ website.
  • Áp dụng cho shared hosting sử dụng web sever Litespeed hoặc Apache.
  • Nếu là VPS chạy Nginx, bước 1 và bước 3 sẽ được thực hiện thông qua những dòng lệnh (cái này tuỳ thuộc vào hệ điều hành và cách bạn cài máy chủ web)

Bước 1: Cài đặt chứng chỉ SSL

Bạn có thể tự làm điều này từ cPanel hoặc bảng điều khiển web hosting của bạn. Nếu bạn chưa rõ SSL domain của mình đã được bật chưa thì các bạn kiểm tra bằng cách vào: cPanel => Security => SSL/TLS Status thấy biểu tượng ổ khóa màu xanh là domain của bạn đã được bật chứng chỉ SSL.

Nếu không thể tự làm điều đó?

  • Nhờ web host của bạn, hoặc nhân viên kĩ thuật của bạn.
  • SSL là miễn phí! – Cảm ơn LetsEncrypt. Đừng để bất cứ ai đánh lừa bạn nghĩ rằng bạn cần phải trả tiền cho nó!

Bước 2: Thay đổi URL WordPress sang HTTPS

Các bạn vào bảng điều khiển WordPress. Trong Settings > General. Ở 2 mục “WordPress Address (URL)” và “Site Address (URL)” hã gõ đường dẫn thành HTTPS (nếu sẵn là https rồi thì thôi bỏ qua).

Bước 3: Áp dụng chuyển hướng HTTPS trong tập tin .htaccess

Nhắc lại 1 lần nữa, thao tác bên dưới chỉ áp dụng cho máy chủ web Apache và Litespeed. Còn Nginx, hầu như bước này đã thực hiện cùng lúc với bước 1.

Bạn sẽ chọn 1 trong 2 code bên dưới, ứng với lựa chọn của bạn cho đường dẫn có WWW hoặc không có WWW, thêm vào file .htaccess.

File .htaccess thường bị ẩn đi. Các bạn nhấn vào biểu tượng cài đặt (setting) góc trên phải trong mục Quản lý tệp tin (File Manager) của Cpanel rồi tích vào “Show …” hay “Hiển thị các file ẩn” là được.

Chèn phía bên trên dòng #BEGIN WordPress

Không WWW (tất cả truy cập sẽ đến “https://domain.com”)

# BEGIN Redirects
RewriteEngine On
# 301 redirect www to non-www
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
# 301 redirect to https
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# END Redirects

Có WWW (tất cả truy cập sẽ đến “https:///www.domain.com”)

# BEGIN Redirects
RewriteEngine On
# 301 redirect to www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# 301 redirect to https
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# END Redirects

Xong rồi. HTTPS hoàn hảo, không bị chấm than “!”, không chạy thêm plugin thường trực nào, không làm chậm đi website của bạn.

Cập nhật mới 2020: Ngày nay hầu hết các Hosting, đặc biệt là các Shared Host đã hỗ trợ chuyển hướng từ http sang https và buộc nó chỉ chạy https một cách dễ dàng. Bạn vào cPanel=>Domains sau đó hiện ra danh sách các domain/subdomain của bạn.

Cách bật chuyển hướng http sáng https trên cpanel

Bạn click BẬT/ON cột Force HTTPS Redirect (buộc chuyển hướng HTTPS) là xong! Nhớ phải thực hiện Bước 1 + 2 ở trên trước nếu web của bạn trước đó chỉ chạy http.

Chúc các bạn thành công!

- Advertisement -

Để lại bình luận

Địa chỉ email của bạn sẽ không được công bố.

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

3 bình luận
  1. Yêu Wordpress Nói

    Quá tuyệt vời. Đúng là ok rồi. Không thì khi viết lại trên trình duyệt thành http sẽ không tự chuyển thành https như mong đợi.

  2. Thanh Long Nói

    Quá hay. Quá hữu ích. Cảm ơn.