Technology

Menggunakan Konfigurasi File HTACCESS

 

   

Apache web server memiliki beberapa pilihan konfigurasi yang tersedia untuk admin server. Di lingkungan hosting yang di-share seperti paket share hosting di jagoanhosting.com , anda tidak punya akses untuk konfigurasi utama Apache sehingga anda terpaksa menggunakan konfigurasi default. Tapi anda bisa saja mengganti beberapa default setting dengan membuat/mengubah sebuah file bernama .htaccess

File .htaccess adalah file teks ASCII sederhana yang terletak di direktori www atau di sebua sub direktori folder www. anda bisa membuat atau mengedit file ini di Text Editor (Notepad) dan kemudian meng-uploadnya ke direktori yang ingin anda ubah setting-nya. Pastikan bahwa file tersebut diupload dalam format ASCII bukan BINARY, dan pastikan file permission untuk file tsb telah diset menjadi 644 (rw-r–r–). Hal tersebut memungkinkan server untuk mengakses file tapi mencegah user untuk mengakses file tersebut dari browser mereka

Perintah2 di dalam file .htaccess mempengaruhi direktori tempatnya berada dan semua subdirektorinya. Bila anda meletakkan file .htaccess di direktori www, maka hal tersebut akan mempengaruhi semua website anda.

Hampir semua perintah .htaccess dirancang untuk ditempatkan dalam satu baris. Jika text editor anda otomatis me-wrap (memotong baris), maka anda harus men-disable fungsi tersebut. Perhatikan juga bahwa perintah .htaccess adalah case-sensitive

Tolong diperhatikan bahwa kami tidak men-support perubahan default setting. Informasi di sini mungkin saja bekerja atau juga tidak.

Beberapa hal yang bisa anda lakukan dengan .htaccess antara lain :

Redirect  akses namadomain ke WWW.namadomain

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

Ubah namadomain dengan nama domain anda yang ingin anda setting

Customize Error Messages

Jika anda ingin mengubah halaman error server, anda bisa menggunakan .htaccess untuk mendefinisikan pesan error anda sendiri. Kemampuan ini didiskusikan di bagian Custom Error Message dari manual ini. Contoh syntax ini adalah:

ErrorDocument 500 /error.html

Override SSI Settings

Secara default, hanya page dengan extensi .shtml yang bisa menjalankan server-side termasuk SSI di server. Anda bisa mengubah hal tersebut di file .htaccess

Jika anda mau mengubah konfigurasi tersebut sehingga SSI bisa bekerja dengan dokumen HTML, anda bisa membuat file.htaccess dan menguploadnya ke direkroti utama www. Tambahkan baris berikut ke file tsb

AddType text/html .html
AddHandler server-parsed .html

Jika anda mau dokumen .html dan .htm untuk menjalankan SSI, buat file .htaccess dengan tambahan baris berikut

AddType text/html .html
AddHandler server-parsed .html
AddHandler server-parsed .htm

Change Your Default Home Page

Agar user bisa mengakses site anda hanya dengan nama domain saja (http://www.site.net) tanpa harus menulis nama file secara jelas (http:www.site.net/file.html), anda harus mempunyai file index di direktori www. 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 anda punya index.cgi & index.html di direktori anda maka server akan menampilkan index.cgi karena .cgi memiliki tingkatan yang lebih tinggi daripada .html

Dengan .htaccess, anda bisa mendefinisikan file index tambahan atau bisa juga mengubah urutan tingkatannya. Untuk mendefiniskan hieronymous.html sebagai halaman index, tambahkan baris berikut ke file .htaccess

DirectoryIndex hieronymous.html

Hal ini akan membuat server mencari file bernama hieronymous.html. Jika server menemukannya maka server akan menampilkannya. Tapi bila tidak, maka server akan menampilkan error 404 Missing Page

Untuk mengubah urutan tingkatan, masukkan perintah DirectoryIndex dengan nama-nama file dalam satu baris. Urutan penulisan file2 tersebut menentukan urutan tingkatan, contohnya:

DirectoryIndex hieronymous.html index.cgi index.php index.html

Enable Directory Browsing

Untuk alasan keamanan, kami telah menghilangkan default 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 anda membuat sebuah http call ke direkori seperti http://yourdomain.com/images/, maka browser akan menampilkan daftar images di dalam direktori tersebut

Jika anda mengingikan opsi ini pada direktori tertentu, anda bisa mengaktifkannya dengan menambahkan baris berikut ke file .htaccess

Options +Indexes

Block Users from Accessing Your Web Site

Jika anda ingin mem-blok access untuk beberapa individu dan anda mengetahui IP / domain name yang digunakan, tambahkan baris berikut :
order deny,allow
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 terhubung dari AOL.com akan diblok. Jika mereka mencoba mengakses site-mu, maka akan tampil error 403 Forbidden (“You do not have permission to access this site”)

Redirect Visitors to a New Page or Directory

Misalkan anda membuat ulang seluruh websitemu, 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-mu adalah oldpage.html dan halaman baru adalah newpage.html maka perintahnya adalah:
Redirect permanent /oldpage.html http://www.mydomain.com/newpage.html

Jika anda me-rename direktori, maka command-nya 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, gunakan:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain.com/.*$ [NC]
RewriteRule \.(gif|jpg)$ – [F]

Perintah tersebut akan membuat direktori image hanya bisa diakses bila user sedang mengakses www.mydomain.com

Jika anda merasa jengkel, anda bisa membuat sebuah image alternatif bila direktori image-mu di-link. Contohnya image nosteal.gif yang bertuliskan: “Stealing is Bad … visit http://mydomain.com to see the real picture that belongs here.” Maka gunakan perintah:

RewriteEngine on
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

Jika anda mau mencegah pengaksesan file lain, ganti nama file .htaccess dengan nama file yang lain

Semoga Bermanfaat.
Artikel ini ditranslate dari http://www.hostingmanual.net/other/htfun.shtml

           

Artikel Terkait

11 komentar

  • 19 February 2008 - pukul 13:07

    Yth,
    Jagoan Hosting.

    saya pemula banget dalam hal membuat website….kebetulan ada kerjaan bikin web utk kantor, domain dah ada, design ga jelek² amat…

    masalahnya….saya lagi belajar² pake perintah “include” utk sidebar, kalo ditest di dreamwaver berhasil….tp pas diupload ke domain gagal….include-nya ga keluar..

    saya cari² tau…ternyata ada file yg mesti dirubah di servernya, yaitu file .htaccess
    rubah punya rubah….ehhh…ternyata web saya sama sekali ga bisa dibuka…hehehehe….ada pesan error 500….

    gimana atu mas….tolong bantu dong…

    makasih sebelumnya.

  • 23 February 2008 - pukul 23:18

    Dear Bpk. Edward

    Jika ada muncul pesan error 500, maka dapat dikatakan script yang bapak masukkan ke file .htaccess tidak support pada hosting anda.

    Bapak coba saja kontak hosting tersebut untuk masalah tersebut.

    Regardz

    Nick

  • 31 March 2008 - pukul 7:36

    Pak mau nanya nih, gimana caranya saya punya link seperti ini : http://www.namadomain.com/news.php?news_id=3&cat=general nah diubah menjadi http://www.namadomain.com/news/3/general
    Terima kasih

  • Fuad
    4 May 2008 - pukul 23:12

    gimana kalo paramater nya lebih dari 9 ???

  • 1 April 2009 - pukul 8:31

    Pa saya mau mengupload file .htaccess, tapi pada saat di upload file tersebutmenghilang. kenapa ya?

  • 11 December 2009 - pukul 20:06

    mantabs gan. ane programmer Delphi & mo serius blajar web. Penasaran
    ama istilah .htaccess, soalnya kok disebut2 terus terutama waktu
    belajar pake framework codeigniter. Ane bookmark dulu ya gan

  • Anita
    12 January 2012 - pukul 17:21

    jadi saya harus bagaimana kalau tetap tidak jalan

    • 13 January 2012 - pukul 13:24

      beberapa server ada yg tidak mengijinkan perubahan melalui htaccess. coba tanyakan pada CS apakah server anda salah satunya.

  • 17 January 2012 - pukul 20:51

    Cukup rumit juga :(

  • 19 January 2014 - pukul 22:00

    Terimakasih infonya sangat bermanfaat pak :) kebetulan lagi cari referensi tentang htaccess

  • 10 February 2015 - pukul 8:38

    File htaccess lg rusak nih. Kebetulan nemu artikel ini. Tks gan..

Berikan Komentar

Your email address will not be published. Required fields are marked *