Bagi para pengembang web, khususnya yang menggunakan server web Apache, file .htaccess adalah alat yang sangat penting. File konfigurasi ini sering kali disembunyikan karena merupakan file sistem, tetapi fungsinya krusial untuk mengatur perilaku situs web. Anda bisa menemukan file ini pada berbagai CMS (Content Management System) dan framework, yang isinya disesuaikan dengan kebutuhan masing-masing platform.

 

Fungsi Utama File .htaccess pada CMS

 

Secara umum, file .htaccess pada CMS berfungsi untuk mengaktifkan URL yang ramah bagi SEO (SEO-friendly URL). Tanpa file ini, URL situs web Anda akan terlihat seperti:

contohwebsite.com/index.php?modul=artikel&id=123

Dengan .htaccess, URL tersebut bisa diubah menjadi format yang lebih bersih dan mudah dibaca oleh manusia maupun mesin pencari, seperti:

contohwebsite.com/artikel/judul-artikel-anda

Proses pengubahan ini disebut "URL Rewriting" dan diatur oleh modul server mod_rewrite.

 

Contoh Konfigurasi Default pada CMS

 

 

1. WordPress File .htaccess WordPress berfungsi untuk memastikan bahwa semua URL yang tidak mengarah ke file atau direktori fisik akan dialihkan ke file index.php. Ini memungkinkan WordPress untuk mengelola semua permintaan halaman, termasuk postingan, kategori, dan tag, sehingga URL-nya tetap bersih dan terstruktur.

 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

 

2. Joomla!

 

File .htaccess pada Joomla! lebih kompleks. Selain mengaktifkan URL yang ramah SEO, file ini juga berisi aturan untuk meningkatkan keamanan dengan memblokir upaya eksploitasi umum, seperti injeksi base64_encode atau manipulasi variabel global melalui URL.

# Begin - Rewrite rules to block out some common exploits.
# [...]
# End - Rewrite rules to block out some common exploits.
# [...]
# Begin - Joomla! core SEF Section.
# [...]
# End - Joomla! core SEF Section.

 

3. OpenCart

 

Untuk OpenCart, file .htaccess fokus pada tiga hal: pengalihan URL yang ramah SEO, pencegahan daftar direktori, dan pembatasan akses langsung ke file-file sensitif seperti file template (.tpl) dan log. File ini juga menyediakan contoh konfigurasi PHP tambahan yang bisa diaktifkan jika diperlukan, seperti mematikan register_globals atau mengatur ukuran maksimum upload file.

# SEO URL Settings
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

 

4. Lokomedia

 

Lokomedia, sebagai salah satu CMS lokal, menggunakan .htaccess untuk mengonversi URL dinamis (dengan parameter id, module, dll.) menjadi URL statis yang lebih mudah dibaca. Setiap jenis halaman, seperti berita, galeri, atau agenda, memiliki aturan pengalihan spesifiknya sendiri.

RewriteRule ^galeri-(.*)\.html$ zoom.php?id=$1 [L]
RewriteRule ^berita-(.*)-(.*)\.html$ media.php?module=detailberita&id=$1 [L]

Penting untuk Dipahami

 

  • Kehati-hatian: Mengedit file .htaccess harus dilakukan dengan sangat hati-hati. Satu kesalahan kecil dapat menyebabkan "Internal Server Error 500" dan membuat seluruh situs tidak dapat diakses.

  • Fungsi Khusus: Setiap CMS memiliki aturan .htaccess yang unik, yang disesuaikan dengan arsitektur dan kebutuhan masing-masing. Memahami isi file ini dapat membantu Anda mendiagnosis masalah atau melakukan kustomisasi lebih lanjut pada situs Anda.

  • Salin dan Unggah: Jika Anda membuat file .htaccess baru, simpan sebagai htaccess.txt terlebih dahulu, unggah ke server, lalu ganti namanya menjadi .htaccess. Ini untuk menghindari masalah karena beberapa sistem operasi tidak mengizinkan pembuatan file dengan nama yang diawali dengan titik.