File .htaccess

- Posted in Pengetahuan by

File .htaccess memungkinkan pengguna untuk mengimplementasikan beberapa instruksi untuk menimpa konfigurasi httpd.conf tanpa membutuhkan akses ke file httpd.conf secara langsung. htaccess adalah file konfigurasi yang berjalan di website untuk mengatur beberapa konfigurasi Apache Web Server. File .htaccess dapat digunakan untuk mengubah konfigurasi seperti mengaktifkan dan menonaktifkan fungsionalitas yang berjalan, melakukan redirect, mengatur ulang URL, memproteksi direktori menggunakan password, proteksi hotlink, memblokir IP tertentu, mengganti zona waktu, melakukan redirect, dan masih banyak yang lainnya.
1. Set DirectoryIndex
berfungsi untuk mengambil file dari direktori yang terpisah. Ketika Apache menerima permintaan dari browser, biasanya tidak mengarah ke URL secara spesifik. Contoh baris kode yang digunakan di dalam file .htacces seperti di bawah ini:

# This Directive will make Apache look first# for “is_aktif.html” before looking for “index.html”
DirectoryIndex is_aktif.html index.html

maksudnya adalah jika dukungan .htaccess tidak diaktifkan, Apache secara default akan mengabaikan file is_aktif.html dan kemudian tetap membuka file index.html. Namun jika file .htaccess aktif, browser akan mengakses file is_aktif.html dan menampilkan halaman is_aktif.html yang sudah dimasukkan beberapa baris kode atau teks tadi.
2. Redirect
Redirect memungkinkan pengguna untuk mengarahkan pengunjung dari satu bagian website ke bagian lain. Perintah ini cukup berguna saat pengguna memindahkan konten lama dan ingin mengarahkan pengunjung dari konten lama ke lokasi konten yang baru. Anda dapat melakukan redirect menggunakan perintah di bawah ini:

Redirect /dir_lama/ https://www.yourdomain.com/dir_baru/index.html

Perintah di atas akan memberikan informasi kepada Apache Web Server dengan logika seperti ini:

“Jika visitor meminta dokumen yang berlokasi di direktori ‘/dir_lama/’, sistem akan menampilkan dokumen yang berada di ‘/dir_baru/index.html’” .
3. Proteksi Password
Apache Web Server menawarkan fitur proteksi kata sandi dan otentifikasi. Anda dapat memberikan proteksi password pada sebuah folder dengan mengharuskan memasukkan password untuk mengaksesnya.
Folder yang terproteksi oleh .htaccess akan menampilkan sebuah pop-up login ketika Anda mencoba mengakses folder yang diberikan proteksi.
Jika Anda ingin mengaktifkan fitur ini, hal pertama yang perlu Anda lakukan adalah menentukan direktori mana yang ingin diproteksi. Kemudian masukkan langsung script di bawah ini ke dalam file .htaccess. Buat file .htaccess jika Anda belum mempunyainya.

AuthName “Member’s Area Name”AuthUserFile /path/to/password/file/.htpasswdAuthType Basicrequire valid-user

4. Blok Visitor Berdasarkan IP

order allow,denydeny from 255.0.0.0deny from 192.168.1.allow from all

Baris kode di atas mengarahkan Apache Web Server untuk memblokir pengunjung dari IP ‘255.0.0.0’ dan ‘192.168.1.’. IP kedua (‘192.168.1.’) tidak menggunakan digit ke-4 yang berarti seluruh IP yang menggunakan tiga digit awal 192.168.1 akan terblokir.
5. Blok Visitor Berdasarkan URL Asal
Selain fitur blokir berdasarkan alamat IP yang ditawarkan Apache Web Server, Anda juga dapat menggunakan fitur blokir berdasarkan pengunjung berasal (referrer). Pengaturan ini berguna pada saat Anda menyadari bahwa website mendapatkan akses dari salah satu website yang terindikasi melakukan spam atau mencoba untuk meretas website Anda.
Penggunaan fitur ini mengharuskan Anda mengaktifkan ‘mod_rewrite’ di server. Jadi Anda perlu memastikannya melalui system administrator atau penyedia layanan hosting bahwa fitur ‘mod_rewrite’ dalam keadaan aktif.
Di bawah ini adalah contoh script yang digunakan untuk memblokir akses yang berasal dari domain atau URL (referrer) tertentu:

RewriteEngine on# Options +FollowSymlinksRewriteCond %{HTTP_REFERER} domainlain.com [NC]RewriteRule .* – [F]

Baris kode di atas memberikan informasi ke Apache Web Server untuk memblokir trafik dari URL domainlain.com. Teks ‘[NC]’ setelah domain referrer memberikan informasi bahwa domain domain referrer tidak case-sensitive.