Apa Itu .htaccess? Fungsi, Cara Kerja, dan Contoh Penggunaannya
Pengantar
Jika Anda menggunakan hosting berbasis Apache, maka .htaccess adalah salah satu file terpenting yang wajib diketahui. File kecil ini dapat mengatur berbagai perilaku server mulai dari redirect, proteksi folder, keamanan, hingga optimasi website. Meski ukurannya kecil dan terlihat sederhana, kemampuan .htaccess sangat powerful dan fleksibel.
Dalam artikel ini, kita akan membahas apa itu .htaccess, bagaimana cara kerjanya, fungsi-fungsinya, contoh penggunaannya, hingga tips keamanan untuk menghindari error.
Apa Itu File .htaccess?
.htaccess (Hypertext Access) adalah file konfigurasi khusus pada server Apache yang memungkinkan Anda mengatur perilaku server pada level direktori. Dengan file ini, Anda bisa memberi instruksi spesifik kepada Apache tanpa harus mengedit file konfigurasi utama.
Kenapa File Ini Penting?
Karena .htaccess memungkinkan Anda:
- Melakukan konfigurasi tanpa akses root / WHM
- Mengatur aturan berbeda pada setiap direktori
- Mengaktifkan fitur keamanan dan optimasi dengan cepat
- Menerapkan redirect dan URL rewrite untuk keperluan SEO
Tanpa .htaccess, sebagian besar pengaturan hanya bisa dilakukan melalui httpd.conf, yang tentu tidak bisa diakses oleh pengguna shared hosting.
Lokasi Umum File .htaccess di Hosting
Biasanya .htaccess berada di:
- /public_html/
- Folder website seperti /public_html/domainanda.com/
- Subfolder tertentu yang ingin dikonfigurasi
- Jika tidak muncul, pastikan file hidden diaktifkan pada File Manager cPanel.

Cara Kerja .htaccess
- Bagaimana Apache Membaca File .htaccess
Apache membaca .htaccess dari atas ke bawah, kemudian menjalankan setiap aturan sesuai urutan. Begitu ada aturan cocok, Apache langsung memproses instruksinya. - Peran Direktori dan Aturan Hierarki
- .htaccess di /public_html/ berlaku untuk semua folder.
- .htaccess di /public_html/admin/ hanya berlaku untuk folder admin.
- Hubungan .htaccess dengan httpd.conf
- httpd.conf = konfigurasi global Apache (akses root diperlukan).
- .htaccess = konfigurasi lokal direktori (akses pengguna hosting).
Beberapa aturan bahkan perlu diaktifkan dulu di httpd.conf (misalnya AllowOverride All) agar .htaccess bisa berjalan.
Fungsi Utama .htaccess
Berikut fungsi paling populer yang sering digunakan:
- Redirect URL (301 & 302)
Dipakai untuk memindahkan domain atau halaman:- 301: redirect permanen
- 302: redirect sementara
- Rewrite URL (mod_rewrite)
Memperindah URL seperti:
website.com/?page=artikel → website.com/artikelSangat penting untuk SEO dan struktur permalink WordPress.
- Password Protect Directory
Melindungi folder dengan username + password menggunakan .htpasswd. - Blokir IP Address
Menghindari akses dari IP tertentu, biasanya untuk menangkal serangan. - Custom Error Pages
Membuat halaman error sendiri seperti:
404 (Not Found), 403 (Forbidden), 500 (Server Error) - Mengaktifkan / Menonaktifkan Directory Listing
Untuk mencegah folder terbuka dan menampilkan isi file secara publik. - Membatasi Akses Berdasarkan User-Agent / Bot
Blokir bot tertentu yang dianggap spam atau menghabiskan bandwidth.
Contoh Konfigurasi .htaccess
- Redirect Domain Lama ke Baru
RewriteEngine On RewriteCond %{HTTP_HOST} ^domainlama\.com$ [OR] RewriteCond %{HTTP_HOST} ^www\.domainlama\.com$ RewriteRule ^(.*)$ https://domainbaru.com/$1 [R=301,L] - Mengaktifkan mod_rewrite + Contoh Rewrite Rule
RewriteEngine On RewriteRule ^artikel/([0-9]+)/?$ artikel.php?id=$1 [L] - . Proteksi Folder dengan .htpasswd
Di dalam .htaccess:
Isi file .htpasswd dibuat dengan hash password, misalnya:AuthType Basic AuthName "Restricted Area" AuthUserFile /home/username/.htpasswd Require valid-user
user1:$apr1$gJH8kfH2$9yu..sXTA12HwB8YoZ/0Q. - Blokir IP Tertentu
Order deny,allow Deny from 192.168.1.10 Deny from 123.45.67.0/24 Allow from all - Custom Halaman Error
ErrorDocument 404 /errors/404.html ErrorDocument 403 /errors/403.html ErrorDocument 500 /errors/500.html - Menonaktifkan Hotlinking
RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^https://(www\.)?domainanda\.com/ [NC] RewriteRule \.(jpg|jpeg|png|gif)$ - [F]
Kesimpulan
File .htaccess adalah alat penting untuk mengatur keamanan, optimasi, dan perilaku server pada website berbasis Apache. Dengan memahami cara kerja dan contoh penggunaannya, Anda dapat mengelola website secara lebih fleksibel dan profesional.
Namun, jika Anda mengalami kesulitan dalam konfigurasi .htaccess atau terjadi error seperti 500 Internal Server Error, Anda tidak perlu khawatir tim support Plasawebhost siap membantu Anda menyelesaikannya dengan aman dan cepat.


