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. :)






Mình không muốn http://www.mofficeviettel.com về thành https thì phải làm thế nào?
Giờ mà web còn chạy HTTP = tự sát đó bạn. :P
thế bây giờ liên hệ bên hots chuyển thành https à bạn
Bạn có thể tự cài hoặc liên hệ với nhà cung cấp để được hỗ trợ nhé.
mình đã cài readlly ssl những không được, cái này phải bên hót nữa đúng không bạn
Really Simple SSL chỉ dùng để chuyển từ HTTP sang HTTPS thôi bạn ạ. Còn nếu muốn có HTTPS thì bạn phải cài SSL trên host trước hoặc dùng SSL của CloudFlare.
ok thank ad, chúc ngày tốt lành
Sao bác ko cho thêm cách chuyển https về http bằng htaccess nữa . thanks
Bạn tham khảo bài viết “Làm thế nào để redirect từ HTTPS về HTTP với file .htaccess?” nhé.
Cái này đổi với Wordpress. Còn code thuần thì sao anh
Làm sao để redirect ngược lại từ http sang https đây anh
Bạn tham khảo bài viết Cài HTTPS cho WordPress trong nháy mắt với Really Simple SSL nhé.
Mình redirect từ HTTPS về HTTP được. Nhừng Lỡ có người nhập https://www.domain thì sao rec về được luôn nhĩ
Giờ còn redirect HTTPS về HTTP làm gì nữa bạn? Cả thiên hạ người ta dùng HTTPS hết rồi. Bạn tính đi ngược lại xu hướng à? :P
Bác hiếu cho em hỏi sao cái website của em nonbo.net.vn nó không tự động chuyển từ http sang https ạ, mặc dù đã cài https rồi và em cái file .htaccess cuối cùng nhưng không được, chả nhé phải cài plugin
Mình truy cập thấy nó tự chuyển từ HTTP sang HTTPS rồi mà?
Em cài plugin đó bác còn copy cái cuối vào để http thì ko bảo mật mà để https thì lại bảo mật có phải do cài ssl bị lỗi phải ko bác
Bạn nhầm bài viết rồi. Bài này là hướng dẫn redirect HTTPS về HTTP chứ không phải HTTP về HTTPS nhé. :P
=)) thế mà cũng TOP từ khóa chuyển http sang https =))
HTTP sang HTTPS phải là bài này mới đúng: “Hướng dẫn chuyển từ HTTP sang HTTPS không bị mất thứ hạng“. :D
Oki cảm ơn Hiếu nhá
Cho em hỏi em đang dùng https, nhưng vì bây giờ em đang muốn mua phần mềm của bên thứ 3 để có thể lấy được số điện thoại của khách hàng truy cập vào website bên em, vậy khi e chuyển từ https về http thì website của em có bị ảnh hưởng thứ hạng từ khóa không ạ
Phần mềm của bên nào mà đến giờ phút này vẫn chưa hỗ trợ HTTP vậy bạn? Nếu chưa hỗ trợ thì bạn nên xem xét tìm phần mềm khác. Vì ở thời điểm hiện tại, khi Google ngày càng tiến dần đến việc loại bỏ HTTP thì chuyển từ HTTPS về HTTP là lựa chọn không sáng suốt đâu. Mất nhiều hơn được. Bạn nên cân nhắc.
Chào bạn!
Website mình trước có chuyển từ http sang https nhưng được hơn 1 tháng thì bị lỗi dấu chéo đỏ, sau đó có thêm đoạn code vào file .htaccess với mục đích chuyển về lại http. Đoạn code này:
RewriteCond %{SERVER_PORT} ^443$RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
Lỗi gạch chéo đỏ hết nhưng lại xuất hiện đồng thời như 2 trang website chạy song song: http://gachnen3d.com/ và https://gachnen3d.com/ (https này ko bảo mật y chang http, chỉ khác là thêm chữ s). Mình không biết nên link đi seo vẫn là http, kiểm tra thứ hạng thì link lên nhiều là https còn http chỉ xuất hiện 1 – 2 link. Webmastertool cũng chỉ thống kê link của http. Giờ mình không biết làm sao để chuyển hết về http mà ko bị mất thứ hạng từ khóa. Mình đi link cũng không biết nên đi link http hay https. Bạn giúp mình với. Thanks.
Vấn đề của bạn là web chạy trên giao thức HTTPS nhưng nhiều tài nguyên trên web của bạn (mà cụ thể là hình ảnh) vẫn chạy trên giao thức HTTP. Bạn thử tham khảo một trong 2 bài viết sau đây xem sao nhé: “Cài SSL cho WordPress trong nháy mắt với plugin Really Simple SSL” và “Hướng dẫn chuyển từ HTTP sang HTTPS không bị mất thứ hạng“. :P
Mình chuyển về https ok rồi, nhưng không biết vài tháng nữa có bị lỗi nữa ko?
Let’s Encrypt của bạn có tự động gia hạn không? Nếu nó tự động gia hạn thì sẽ không bị lỗi thông báo đỏ nữa đâu. :P
Cảm ơn anh nhiều nhá. Tìm mãi các bài viết có mỗi cách của anh là dùng được. Chúc website bên mình phát triển mạnh!!
Rõ ràng lưu code rồi, một thời gian sau lại quay về code mặc định, khó hiểu?
Cái này là do WordPress cập nhật phiên bản mới nên nó tự động reset lại file .htaccess. Bạn không muốn bị reset thì đừng chèn trực tiếp vào đoạn code mặc định của WordPress mà thêm 1 đoạn thế này lên đầu file .htaccess:
RewriteEngine OnRewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
Chào bạn, lúc đầu mình có dùng https://baconsoi.vn nhưng giờ chuyển lại qua http://baconsoi.vn mà làm theo hướng dẫn của bạn nó không nhận là sao nhỉ. Mình đã sửa thành công file .htaccess rồi.
Bạn kiểm tra giúp m với. M cám ơn nhìu.
Bạn có đang cài đặt SSL trên host hay VPS không? Nếu không có SSL thì không thể redirect được từ HTTPS về HTTP đâu nhé. :P