Redirect HTTP ke HTTPS di .htaccess

Sebenarnya ada beberapa cara untuk mengalihkan visitor dari mengakses http ke https.

Pertama, bisa melalui file htaccess.

Dua, melalui html header redirect tag.

Tiga, melalui JavaScript redirect.

Empat, melalui kode PHP.

Adapun cara yang paling umum dipakai adalah yang pertama.

Kenapa? Karena cukup dengan mengedit file .htaccess maka kita bisa melakukan berbagai jenis kondisi untuk melakukan pengalihan (redirection).

Selain itu, Apache bersama LiteSpeed (jika digabungkan) masih merupakan webserver yang paling banyak digunakan terutama di ekosistem shared hosting.

Pesan sponsor: 😁

Kunjungi Cloudforspeed.com, shared hosting LiteSpeed dan Cloudlinux termurah.

Lalu bagaimana dengan Nginx? Tentu bisa juga tetapi tidak melalui file htaccess. Nanti kita akan bahas tersendiri ya gaes untuk Nginx.

Berikut beberapa kode htaccess redirect yang bisa kamu pakai untuk me-redirect dari protokol HTTP ke HTTPS.

Note: Kamu perlu memasang SSL Certificate untuk dapat menggunakan HTTPS.

Redirect All Web Traffic (Semua Domain)

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Redirect All Web Traffic (Domain Tertentu)

Jika kamu punya beberapa parked domain atau domain alias/pointers, dan ingin meredirect traffic dari domain apapun yang diakses dari HTTP ke https://domainspesifik.com/, kamu bisa pakai ini

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://domainspesifik.com/$1 [R,L]

Ganti domainspesifik.com dengan domain mu.

Tambahkan www atau subdomain, jika web yang kamu redirect berada di sub-domain.

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://sub.domain.com/$1 [R,L]

Redirect Only a Specific Domain

Jika kamu punya banyak domain (dalam satu virtualhost misal via parked domain atau pointers), yang ini bisa dipakai:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^yourdomain\.com [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.yourdomain.com/$1 [R,L]

Redirect Only a Specific Folder

Redirect ke HTTPS hanya jika pengunjung mengakses folder/directory tertentu di web kamu:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} folder
RewriteRule ^(.*)$ https://www.domain.com/folder/$1 [R,L]

Jangan lupa ganti domain dan /folder/ pada contoh di atas.

Bagaimana cara mengedit file .htaccess?

Jika kamu pakai cPanel, ikuti ini:

  1. Login ke cPanel
  2. Pergi ke Files > File Manager > public_html atau root directory dari domain kamu
  3. Centang “Show Hidden Files (dotfiles)”
  4. Click Go.
  5. Tulis .htaccess pada kolom pencarian lalu klik Go.
  6. Klik dua kali pada file .htaccess yang mau kamu edit.
  7. Klik kanan pada file .htaccess dan klik “Code Edit”.
  8. Kotak dialog akan muncul, klik tombol Edit untuk melanjutkan.
  9. Silahkan Edit file tersebut dengan menambahkan salah satu kode di atas.
  10. Klik “Save Changes” untuk menyimpan.
  11. Silahkan buka browser lalu tes web anda dengan mengaksesnya melalui https://. Apabila ada error/masalah, kembalikan isi file htaccess ke posisi semula.
  12. Beres? Klik tombol Close untuk menyudahi.

Jika kamu pakai VPS, silahkan cari dan edit file htaccess menggunakan Nano editor atau vi.

Atau, bisa juga akses server mu menggunakan Filezilla atau WinSCP, kemudian edit file htaccess menggunakan Notepad, Sublime, atau VSCode.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.