Redirect http to https (SSL Flexibel dari CloudFlare)
Redirect http to https tidaklah sulit, sudah banyak tutorial yang menjelaskan cara melakukan redirect http to https melalui file htaccess.
Dalam tulisan ini Saya akan membahas bagaimana cara redirect http to https kusunya untuk SSL Flexible dari CloudlFare. Jika Anda tidak menerapkan pengalihan, server asal akan selalu menerima permintaan melalui HTTP (port 80).
Umumnya server Apache akan menggunakan diantara syntax di bawah ini untuk melakukan redirect:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Tetapi syntax diatas tidak berlaku apabila Anda menggunakan ssl dari CloudFlare. CloudFlare mempunyai cara tersendiri untuk melakukan redirect http to https melalui file htaccess. Berikut adalah syntax untuk htaccess nya:
RewriteEngine On
RewriteCond %{HTTP:CF-Visitor} '"scheme":"http"'
RewriteRule ^(.*)$ https://masgani.com/$1 [L]
atau
RewriteEngine On
RewriteCond %{HTTP:CF-Visitor} '"scheme":"http"'
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L]
pilih salah satu dari syntax di atas dan letakan ke dalam file htaccess yang Anda miliki.
Anda juga dapat melakukan pengalihan menggunakan Page Rules yang disediakan oleh CloudFlare, disana Anda bisa mengatur pengalihan sesuai dengan yang Anda inginkan.
Sekian info dari Saya, semoga tulisan ini cukup membantu bagi Anda yang mengalami permasalah ini.
Source: https://support.cloudflare.com/hc/en-us/articles/200170536-How-do-I-redirect-HTTPS-traffic-with-Flexible-SSL-and-Apache-
tampilan saya kok jadi ancur ya mas setelah di redirect, kenapa ya?
Biasanya karena Mixed Content. Pastikan semua file yang diload di halaman website sudah menggunakan protokol HTTPS.
Jika menggunakan wordpress, silakan rubah pengaturan url nya jadi https atau bisa gunakan plugin Really simple SSL.