Setting Force HTTPS di .htaccess: Aman, SEO Friendly, dan Mudah
Apa Itu HTTPS dan Alasan Mengapa Penting
Apa Itu Force HTTPS?
Apa Itu File .htaccess?
File .htaccess adalah file konfigurasi pada server Apache yang digunakan untuk mengatur berbagai pengaturan penting pada website tanpa harus mengakses konfigurasi server utama. Melalui file ini, pemilik website dapat mengelola redirect URL, meningkatkan keamanan website, mengontrol akses ke folder tertentu, serta mengaktifkan rewrite rules untuk kebutuhan URL yang lebih SEO-friendly. File .htaccess umumnya berada di dalam direktori public_html, yaitu folder utama tempat file website disimpan.
Perlu diketahui bahwa file .htaccess bersifat hidden file, sehingga tidak selalu terlihat secara langsung di file manager. Selain itu, file ini sangat sensitif terhadap kesalahan penulisan; satu baris kode yang salah saja dapat menyebabkan website mengalami 500 Internal Server Error. Oleh karena itu, sangat disarankan untuk selalu melakukan backup file .htaccess sebelum melakukan pengeditan agar website dapat dengan mudah dipulihkan jika terjadi kesalahan.
Syarat Sebelum Setting Force HTTPS
Sebelum melakukan force HTTPS, pastikan:
-
SSL sudah terpasang dan aktif
-
Let’s Encrypt
-
SSL berbayar
-
-
Website bisa diakses via
https:// -
Server menggunakan Apache / LiteSpeed
-
Modul
mod_rewriteaktif
Jika SSL belum aktif, force HTTPS akan menyebabkan website tidak bisa diakses.
Cara Mengakses File .htaccess
1. Melalui cPanel /Hosting Panel
- Login ke cPanel
- Buka File Manager
- Masuk ke folder
public_html - Aktifkan Show Hidden Files
- Cari file
.htaccess
2. Jika File .htaccess Tidak Ada
Buat file baru dengan nama: (tanpa ekstensi apa pun).htaccess
Kode Dasar Force HTTPS Menggunakan .htaccess
Gunakan kode berikut ini di bagian paling atas file .htaccess: RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Penjelasan Per Baris
RewriteEngine OnMengaktifkan modul rewrite ApacheRewriteCond %{HTTPS} offMengecek apakah koneksi masih HTTPRewriteRuleMengalihkan seluruh URL HTTP ke HTTPS dengan redirect permanen (301)
Redirect 301 penting untuk SEO karena memberitahu Google bahwa URL lama telah dipindahkan secara permanen.
Force HTTPS dengan IfModule (Lebih Aman)
Untuk menghindari error jika mod_rewrite tidak aktif: <IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
Versi ini paling direkomendasikan untuk website produksi.
Force HTTPS Sekaligus Non-WWW atau WWW
1. HTTPS + Non-WWW
2. HTTPS + WWW
Gunakan salah satu agar URL konsisten (penting untuk SEO).
Force HTTPS untuk Folder Tertentu
Jika hanya ingin folder tertentu menggunakan HTTPS: Atau buat file RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^secure/(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
.htaccess langsung di folder tersebut.
Kesalahan Umum Saat Force HTTPS
Redirect Loop (ERR_TOO_MANY_REDIRECTS)
Penyebab:
- Redirect ganda di
.htaccess - Redirect juga di CMS (WordPress settings)
- Plugin redirect bentrok
Solusi:
- Gunakan satu metode redirect saja
- Cek Settings → General di WordPress
- Bersihkan cache browser & plugin
Website Error 500
Penyebab:
- Salah penulisan kode
- Modul rewrite tidak aktif
Solusi:
- Periksa kembali sintaks
- Gunakan
<IfModule>
Dampak Force HTTPS terhadap SEO
Force HTTPS memberikan manfaat SEO berikut:
- Menghindari duplicate content
- Memperjelas canonical URL
- Meningkatkan trust signal
- Mendukung ranking Google
Google secara eksplisit merekomendasikan pengguna HTTPS untuk semua website.
Best Practice Setelah Force HTTPS
Setelah HTTPS aktif:
-
Update URL di:
-
WordPress Settings
-
Google Search Console
-
-
Periksa mixed content
-
Update internal link
-
Aktifkan HSTS (opsional, advanced)
Kesimpulan
Force HTTPS menggunakan .htaccess adalah cara simpel namun sangat efektif untuk mengamankan website, memastikan konsistensi protokol, serta memperbaiki SEO. Cukup dengan menambahkan aturan redirect di .htaccess, pengunjung yang akses via HTTP akan otomatis diarahkan ke versi HTTPS yang aman tanpa perlu plugin tambahan.
