Apa itu file .htacces?
.htacces(tanda titik ”.” diikuti
deretan tulisan “htacces”) adalah file konfigurasi yang disediakan oleh web
server Apache, yang biasanya dapat digunakan untuk mengubah settingan default
dari Apache.
File .htaccess merupakan
file teks ASCII sederhana yang biasanya diletakkan dalam root direktori. File ini diharuskan dalam format ASCII
dan bukan binary dan untuk file permission (atribut file) pada server
hostingharus di set 644 (rw-r-r).
Hal tersebut dimaksudkan agar server dapat mengakses file .htaccess, tapi mencegah user untuk mengakses file.htaccess dari browser mereka. File .htaccess yang
diletakkan dalam rootdirektori dapat digunakan untuk mengubah
konfigurasi dari subdirektori-subdirektori yang ada didalamnya, sehingga dalam
satu website biasanya kita cukup untuk mempunyai 1 file .htaccess saja
yang diletakkan dalamroot direktori.
Kegunaan
File .htaccess
File .htaccess dapat
digunakan antara lain untuk :
· Customize Error
Message
Artinya
kita dapat mengubah halaman error pada server,
dengan mendefinisikan sesuai dengan keinginan kita sendiri.
·
Override SSI
Settings
Secara default,
hanya halaman web yang mempunyai extensi .shtml yang bisa menjalankan
server-side termasuk SSI di server. Dengan menggunakan.htaccess kita
dapat mengubah setting default tersebut agar SSI bisa bekerja dengan format
HTML.
Untuk mengubah settingan tersebut, kita dapat menambahkan kode berikut di file .htaccess
AddType text/html .html
AddHandler server-parsed .html
AddHandler server-parsed .html
Jika
kita menginginkan halaman yang berekstensi .html dan .htm untuk dapat
menjalankan SSI, maka file .htaccess dapat
ditambahkan kode berikut
AddType text/html .html
AddHandler server-parsed .html
AddHandler server-parsed .htm
AddHandler server-parsed .html
AddHandler server-parsed .htm
·
Change Default
Home Page
artinya bahwa file .htaccess dapat
digunakan untuk mengubah nama default halaman depan web. Agar user bisa
mengakses website kita hanya dengan nama domain saja (http://www.nama_web.com)
tanpa harus menulis nama file secara jelas (http:www.nama_web.com/file.html),
kita harus mempunyai file index di root direktori. Nama file yang bisa diterima
antara lain index.html, index.htm, index.cgi, index.php dll. Pastikan bahwa
file tsb bernama index.*
Ada
tingkatan dalam pemberian nama tersebut. Jika kita punya index.cgi &
index.html di root direktori maka server akan menampilkan
index.cgi karena .cgi memiliki tingkatan yang lebih tinggi daripada .html
Dengan .htaccess,
kita bisa mendefinisikan file index tambahan atau bisa juga mengubah urutan
tingkatannya. Untuk mendefinisikanhalamandepan.html sebagai halaman
index, kita dapat menambahkan kode berikut ke file .htaccess
DirectoryIndex halamandepan.html
Hal
ini akan membuat server mencari file bernama halamandepan.html.
Jika server menemukannya maka server akan
menampilkannya. Tapi bila tidak, maka server akan menampilkan error 404
Missing Page
Untuk mengubah
urutan tingkatan, kita dapat memasukkan perintahDirectoryIndex dengan
nama-nama file dalam satu baris. Urutan penulisan file tersebut menentukan
urutan tingkatan, contohnya:
DirectoryIndex halamandepan.html index.cgi index.php index.html
·
Enable Directory
Browsing
Untuk alasan keamanan, server Apache
biasanya telah menghilangkandefault setting yang memungkinkan directory
indexing. Opsi inilah yang memungkinkan isi dari direktori untuk
ditampilkan di browser jika direktori tersebut tidak mempunyai
halaman index.
Contohnya, jika kita memasukkan sebuah UR yang
tidak mempunyai halaman index seperti misalnya http://domainanda.com/images/,
maka browser akan menampilkan daftar images di dalam direktori tersebut
·
Block Users from
Accessing Your Web Site
Jika kita
menginginkan mem-blok access untuk beberapa user, dimana kita mengetahui IP /
domainname yang digunakannya, kita dapat menambahkan kode berikut :
order deny,allow
deny from 123.456.789.000
deny from 456.78.90.
deny from .aol.com
allow from all
deny from 123.456.789.000
deny from 456.78.90.
deny from .aol.com
allow from all
Pada contoh di atas, user dg IP
123.456.789.000 akan diblok. Semua user antara 456.78.90.000 sampai
456.78.90.999 akan diblok. Dan semua user yang berasal dari AOL.com akan
diblok. Jika mereka mencoba mengakses website kita, maka akan tampil error 403
Forbidden (”You do not have permission to access this site”)
·
Redirect Visitors
to a New Page or Directory
Misalkan kita membuat ulang seluruh website
kita, me-rename halaman & direktori. Maka pengunjung halaman lama akan
mendapat error 404 File Not Found. Masalah
tersebut dapat diatasi dengan melakukan redirect dari halaman
lama ke halaman yang baru. Contohnya bila halaman lama kita adalah oldpage.html
dan halaman baru adalah newpage.html maka perintahnya adalah:
Redirect permanent /oldpage.html http://www.mydomain.com/newpage.html
Jika kita
me-rename (mengganti nama) direktori, maka perintahnya adalah:
Redirect permanent /olddirectory http://www.mydomain.com/newdirectory/
Perhatikan
bahwa nama direktori yang lama ditulis dengan relative path,
sementara yang baru ditulis dengan URL absolut
·
Prevent Hot
Linking and Bandwidth Leeching
Untuk mencegah orang lain me-link secara
langsung ke direktori image anda dari website mereka, biasanya ada orang
mengambil gambar dari website kita, tapi tetap menggunakan link diserver
host kita, ini tentu akan merugikan bagi kita karena dapat mengurangi
bandwith di hosting kita, untuk mengatasi hal ini kita dapat menambahkan kode
berikut:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?namadomain.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ - [F]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?namadomain.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ - [F]
Perintah
tersebut akan membuat direktori image hanya bisa diakses bila user sedang
mengakses www.namadomain.com
Jika
kita merasa jengkel, kita bisa membuat sebuah image alternatif bila direktori
image di-link oleh orang lain. Contohnya kita membuat image alternatif dengan
nama nogambar.gif yang bertuliskan: “Gambar dr web lain … kunjungi
http://namadomain.com untuk melihat gambar sebenarnya.” Maka kita dapat
menambahkan kode berikut:
RewriteEngine
on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ http://www.mydomain.com/dontsteal.gif [R,L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ http://www.mydomain.com/dontsteal.gif [R,L]
·
Prevent viewing
of .htaccess or other files
Untuk mencegah
user mengakses file .htaccess, ketikkan perintah:
order allow,deny
deny from all
deny from all
Dari
beberapa kegunaan dari file .htaccess diatas, kita dapat
kembangkan sesuai dengan kebutuhan kita.
Selamat mencoba
:)
Sumber : http://www.gembong.web.id/2008/04/mengenal-file-htaccess.html
Tidak ada komentar:
Posting Komentar