Làm thế nào để redirect từ HTTPS về HTTP với file .htaccess?

Sử dụng SSL (HTTPS) giúp dữ liệu trên blog/ website WordPress của bạn an toàn hơn trước nguy cơ tấn công từ phía tin tặc. Hơn nữa, Google cũng ưu tiên các trang sử dụng giao thức HTTPS trên bảng xếp hạng kết quả tìm kiếm của họ. WP Căn bản đã từng có một số bài viết hướng dẫn cách cài đặt SSL cho blog/ website WordPress. Tuy nhiên, nếu vì một lý do nào đó (chẳng hạn như site có tốc độ load quá chậm khi sử dụng SSL) và bạn muốn chuyển về sử dụng giao thức HTTP thì bài viết này là dành cho bạn.
Tham khảo thêm:
- Làm thế nào để cài đặt SSL và HTTPS cho WordPress?
- Cài đặt CloudFlare SSL miễn phí cho blog WordPress
- Sửa lỗi SSL trong WordPress một cách đơn giản
Tại sao bạn phải redirect từ HTTPS về HTTP?
Việc này sẽ giúp bạn tránh được các lỗi 404 khi một ai đó truy cập blog/ website thông qua kết quả tìm kiếm của Google cũng như link được bạn chia sẻ trên mạng xã hội, diễn đàn hay blog, website khác. Nói tóm lại, đây là một thao tác quan trọng, có lợi cho việc SEO blog/ website.
Hướng dẫn redirect từ HTTPS về HTTP với file .htaccess
Lưu ý:
- Bạn vẫn phải tiếp tục duy trì SSL trên hosting/ VPS, nếu không khi redirect sẽ bị lỗi.
- Thủ thuật chỉ áp dụng trên hosting/ VPS sử dụng webserver Apache hoặc LightSpeed (dùng được file .htaccess).
- Nội dung file .htaccess có thể bị thay đổi khi bạn update phiên bản WordPress mới. Do đó, mỗi khi update phiên bản WordPress, hãy kiểm tra file .htaccess và thao tác lại (nếu cần thiết).
1. Truy cập vào thư mục gốc của WordPress thông qua File Manager của cPanel/ DirectAdmin hoặc FTP, mở file .htaccess và tìm đoạn code sau:
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Đây chính là nội dung file .htaccess mặc định của WordPress.
2. Thêm đoạn code sau đây vào ngay bên dưới RewriteEngine On:
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
Kết quả sẽ trông như thế này:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
3. Lưu file .htaccess lại và kiểm tra kết quả. Đơn giản vậy thôi, chúc các bạn thành công!
Bạn biết phương pháp khác đơn giản và hiệu quả hơn giúp redirect từ HTTPS về HTTP trong WordPress? Hãy chia sẻ nó với chúng tôi bằng cách sử dụng khung bình luận bên dưới.
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. :)






em lên đời https mà ko thành công vì sửa lỗi hoài ko hiển thị ô khoá màu xanh . nên giờ quay lại http làm theo hướng dẫn trên vẫn ko dc
website: cobe.vn
Bạn tham khảo bài viết “Cài SSL cho WordPress trong nháy mắt với plugin Really Simple SSL” hoặc “Sửa lỗi SSL trong WordPress một cách đơn giản” nhé. :)
Em đã đọc và làm theo hết rồi ạ.
Không thành công nên giờ muốn xuống lại http cho lành.
Cao thủ xem file .htacess ở trên hướng dẫn em với ạ, em làm theo trên mạng chỉ mà cũng ko dc.
em cám ơn
Inspect => Console trên trình duyệt xem link nào chưa chạy qua HTTPS? Nếu là internal link thì cài plugin Really Simple SSL là xong. Còn external link thì kiểm tra xem nó có hỗ trợ HTTPS không. Nếu không hỗ trợ thì bắt buộc phải gỡ bỏ và tìm phương án thay thế. :P
Để chuyển thử cái xem thế nào nhỉ
Nghiên cứu cách làm trên NGINX đi Hiếu ơi. Cần lắm .
NginX thì tham khảo mấy link này xem: http://stackoverflow.com/questions/3893839/how-do-i-redirect-https-requests-to-http-in-nginx và http://stackoverflow.com/questions/3470290/nginx-redirect-https-to-http :)
Thấy hiếu ra nhiều bài hướng dẫn về wordpress thấy mình còn thíêu sót nhiều quá. Cần phải học hỏi ở hiếu nhiều.
Hiếu chuyển qua thế này nhỡ bị tin tặc tấn công thì sao :P
Mình chuyển cả năm nay rồi mà. :D
Mình không để ý, à đúng hơn là không biết :P , mà đọc bình luận tưởng HIếu mới chuyển :D
À mà mấy hôm nay vào một số trang https bằng Chrome thì mình thấy báo lỗi này
Mình vừa thử vào trang sanvoucher.com của bạn ở trên thì bị báo lỗi, còn trang it60s.org thì vào ok. Không biết là lỗi gì nhỉ?
Do trình duyệt chăng? Mình dùng Firefox không bị lỗi gì cả. :)
mình thử firefox vẫn bị, có khi tại mạng rồi, chắc mấy hôm là hết :)
do mình đang chỉnh sửa file conf tùm lum nên nó lỗi đấy, giờ ngon lành rồi
Lại thêm một thanh niên đua theo trào lưu đổi tên miền. :D Dùng tên miền .vn dễ bị sờ gáy lắm đấy. Hehe. :P
keke ko có thu nhập đến 50 triệu, không đưa thông tin sai sự thật…sợ gì. :-). cũng suy nghĩa và xem luật rồi nên kệ cứ chơi, vì tên đó đang còn. em đổi cho chắc lỡ sau này lớn như bác đổi sao được haha
Không liên quan nhưng cái logo đẹp đấy, mặc dù hơi rườm rà một chút. :D
trừ chrome ra thì các trình duyệt khác mình vào đc web của bạn rồi :D
bác Hiếu có rành về Nginx hay bác nào đi ngang qua giúp e với, e tính đổi domain mà còn bước redirect 301 sang domain mới thì ko thể làm đc, dù vào file .conf redirect như hướng dẫn mà nó cứ đơ ra, hix giờ phải làm sao
Mình không rành về NginX lắm. :)
Đoạn code này cũng được nè :)
RewriteCond %{HTTPS} onRewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Cái ebooksvn của anh HIếu sao lại chuyển về http lại nhỉ, anh muốn tăng tốc độ load trang hay sao.
Trang em thì không cần bảo mật gì, nhưng nghe giang hồ đồn là https làm google cộng thêm điểm cho site nên em vẫn để.
1 là để load cho nhanh, 2 là nhìn không thích nên gỡ. :D
Mới ridect lại à Hiếu, hôm trước thấy trên Google mấy bài viết của H vẫn còn https chưa chuyển về dc :)
Ý bạn là domain ebooksvn.com hả? :D Cái đó mình redirect bằng CloudFlare. :P
Đúng rồi, mà nó ko tự chuyển về được phải xóa đi chữ ‘s’ nó mới về wpcanban :)
Giờ thì ok hết rồi chứ? :D
Mới seach lại thấy ok rồi :) nhanh nhỉ :D
Book ngay sau này còn sử dụng :D