Pengertian dan fungsi secara singkat, .htaccess adalah file bawaan dari konfigurasi web server terkenal dan paling banyak digunakan di seluruh dunia yaitu, Apache Web Server. File .htaccess ini memang sering digunakan oleh banyak aktivitas oleh para programmer pada file manager hosting atau server.
Lalu, apa sih .htaccess itu?
Secara singkat .htaccess adalah file konfigurasi yang hanya di sediakan oleh web server Apache, fungsi .htaccess yang sering digunakan untuk mengedit, menambahkan, dan mengurangi konfigurasi pada server.
Bagaimana .htaccess pada web server lainnya?
File .htaccess untuk saat ini tidak tersedia secara lengkap pada web server Nginx, namun jika kamu menggunakan reverse proxy antara nginx-apache maka .htaccess dapat bekerja karena secara teknis nginx hanya meneruskan konten website dari apache. Selanjutnya ialah web server LiteSpeed, web server yang satu ini memang terkenal dengan kehandalan dan kecepatannya 10x lipat dari web server pada umumnya, saat ini LiteSpeed mendukung penuh file .htaccess dari apache.
Apa Fungsi .htaccess?
- Digunakan untuk memproteksi visitor yang melakukan surfing pada file website.
- Melakukan pengalihan atau redirect visitor ke sebuah halaman berbeda.
- Mengamankan direktori dan memblokir visitor mengakses direktori tertentu.
- Melakukan first indexing tipe file
- Memberikan output error 404 atau 403 jika ada user yang mengakses website namun konten yang dicari tidak tersedia pada website.
Bagaimana Cara Membuat File .htaccess?
Cara membuatnya cukup mudah, tinggal tambahkan file kosong dengan nama .htaccess Berikut ini adalah fungsi dan masing-masing script yang umum digunakan pada konfigurasi .htaccess untuk keamanan dan privasi website:
- Membuat Halaman Kesalahan
.htaccess dapat memunculkan pesan kesalahan pada website, fungsinya jika ada visitor website yang mengakses direktori tertentu dan isi konten tidak terdapat pada direktori tersebut maka yang terjadi .htaccess akan menampilkan pesan kode error sebagai berikut:
400 Bad Request
401 Authorization Required
403 Forbidden
500 Internal Server Error
404 Wrong Page
Kamu dapat membuatnya sebagai berikut:
-Error Document 403
ErrorDocument 403 /403.html
-Error Document 404
ErrorDocument 404 /404.html
- Menolak dan Mengizinkan Akses Direktori
Jika visitor mengakses website kamu, kemudian pada file manager tidak terdapat index default, maka yang akan muncul ialah baris direktori folder website. Untuk menanganinya kamu dapat menaruh baris script berikut:
Mengizinkan akses direktori
Options +Indexes
Menolak akses direktori
Options -Indexes
- Menolak Hot Linking dan Bandwidth Leeching
Maksudnya ialah, jika konten website kamu berisi bermacam gambar dan video yang cukup banyak, kemudian ada website lain ingin melakukan link pada gambar di website kamu agar ditampilkan pada website mereka, maka hal itu dapat menyebabkan lonjakan bandwidth dan membuat bandwidth yang dimiliki akan berkurang, selain itu dapat berpotensi website lelet ketika diakses bahkan yang cukup parah ialah terjadi down. Untuk mengantisipasi hal tersebut cukup masukkan script berikut pada .htaccess:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www.)?domainKamu.id [NC]
RewriteRule .(gif|png|jpg|mp4)$ – [F]
- Menolak Akses .htaccess
Mencegah visitor mengakses file .htaccess pada direktori website dengan menambahkan script berikut:
order allow,deny deny from all
- Pengalihan atau Redirect Halaman Website
File .htaccess dapat digunakan untuk mengalihkan halaman ketika ada visitor yang mengakses konten websitemu, kemudian kamu tidak ingin visitor mengakses direktori tersebut, maka solusinya adalah mengarahkan visitor ke halaman yang lainnya. Silahkan tambahkan baris script berikut pada file .htaccess:
Redirect /home/html/website/index.html https://domainKamu/beranda.html
Redirect permanent / http://domainKamu/
- Mengkonversi atau Canonicalization
Canonicalization adalah website yang sama, namun memliki URL berbeda, contohnya:
www.hostingssd.id, hostingssd.id
www.hostingssd.id/hosting, hostingssd.id/hosting
Canonicalization tidak baik untuk sistem optimasi Search Engine Optimization, penyebabnya ialah sebenarnya trafik menuju halaman web yang dihitung sebagai URL yang berbeda, walaupun konten dan lokasi direktori yang sama. Kamu bisa mengatasinya dengan memberikan baris script pada file .htaccess sebagai berikut:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domainKamu.id
RewriteRule (.*) http://www.domainKamu.id/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index.html\ HTTP/
RewriteRule ^index.html$ http://www.domainKamu.id/ [R=301,L]
Kesimpulan
.htaccess adalah file konfigurasi yang digunakan untuk mengedit, menambahkan, mengurangi, dan mengamankan konfigurasi pada server. Selain itu, kamu sudah mengerti tentang .htaccess secara keseluruhan baik pengertian, fungsi, dan cara membuatnya. Apa langkah selanjutnya? Kamu dapat memaksimalkan keamanan pada website dan menutup celah kerentanan pada website, sehingga dapat mencegah aktivitas yang mencurigakan.