Câu trả lời:
Dưới đây là hướng dẫn đầy đủ - Bật Hỗ trợ hoàn chỉnh cho SSL trên Wordpress
Một kiểm tra đơn giản is_ssl()
nên làm điều đó:
add_action( 'plugins_loaded', 'wpse_2718_force_ssl' );
function wpse_2718_force_ssl()
{
if ( is_ssl() )
return;
wp_redirect(
'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']
);
exit;
}
Nhưng tôi cũng sẽ làm điều này trong .htaccess để bắt hình ảnh:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Đối với ISS, xem câu trả lời này trên Stack Overflow .
Thêm quy tắc này vào đầu .htaccess:
# BEGIN Force SSL
# This should be the first rule before other rules
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
</IfModule>
# END Force SSL
Điều này nên có trước các quy tắc của WordPress.
Tôi đã sử dụng SSL Simple Simple cho tất cả các trang web của khách hàng và nó hoạt động rất tốt. Nếu bạn không muốn sửa đổi mã, chỉ cần cài đặt plugin này và định cấu hình nó.