htaccess

Cloud VPS
Admin Tutorial
Latest posts by Admin Tutorial (see all)

Pengertian

File .htaccess adalah file text sederhana dalam format ASCII. Pada umumnya kita bisa menggunakan file .htaccess untuk merubah beberapa konfigurasi untuk mengarahkan pada web server Apache. File .htaccess dapat ditaruh dimapun pada folder website Anda.

Ada beberapa hal yang dapat dilakukan dengan .htaccess, diantara yaitu:

  • Mencegah pengunjung melakukan browsing direktori
  • Me-redirect pengunjung dari satu halaman ke halaman lain
  • Memberi proteksi password pada direktori
  • Mengubah default halaman index pada folder tertentu
  • Mencegah hot-linking of images dari website

Banyak hal yang dapat dilakukan dengan .htacces, diantaranya yaitu:

  1. Membuat halaman pesan kesalahan sendiri
    Dengan menggunakan file .htacces, Anda dapat membuat halaman pesan kesalahan yang dapat dilakukan untuk website Anda sendiri dan tidak perlu menggunakan settingan default dari server. Dengan membuat halaman pesan seperti ini membuat website Anda terlihat lebih profesional dalam menangani kesalahan yang terjadi bahkan juga mengijinkan untuk membuat script yang dapat memberitahu Anda jika terjadi kesalahan.Berikut adalah pesan kesalahan yang sering terjadi:

    401 – Authorization Required
    400 – Bad request
    403 – Forbidden
    500 – Internal Server Error
    404 – Wrong page

    Anda dapat menggunakan pesan kesalahan Anda sendiri selama mengetahui kode yang digunakan (contoh: 404 page not found) dengan menambahkan perintah ke dalam file .htacces Anda:

    ErrorDocument kode /file.html atau

    ErrorDocument kode http://www.namadomain/file.php


    Contohnya jika Anda mempunyai file notfound.html di dalam root direktori dari website, Anda bisa menggunakannya untuk 404:

    ErrorDocument 404 /notfound.html atau

    ErrorDocument 404 http://www.namadomain/notfound.php


    Namun jika file tersebut tidak berada di dalam root direktori dari website, Anda dapat menambahkannya struktur direktori seperti berikut:

    ErrorDocument 404 /error/notfound.html

    Kemudian buat file untuk menampilkan pesan kesalahan ketika kesalahan itu terjadi dan upload file-file tersebut, juga upload file .htaccess.


  1. Allow/Deny Browsing Terhadap Folder
    Jika browsing pada folder yang belum diberikan file .htaccess, orang yang mengakses sebuah URL dari website Anda dimana folder tersebut tanpa halaman index, akan melihat list dari file dan folder yang terdapat di dalamnya.Untuk mencegah hal-hal seperti akses, dapat menaruh perintah seperti berikut:
    IndexIgnore */*

    Jika suatu saat kita perlu melakukan direktori browsing, dapat menaruh perintah pada file .htaccess:
    Options +Indexes

  1. Mencegah Hot Linking dan Bandwidth Leeching
    Apabila website berisi gambar-gambar dan website lain melakukan link ke gambar kita untuk ditampilkan di website mereka, maka bandwidth yang kita miliki akan berkurang.
    Untuk mencegah hal tersebut, dapat menggunakan perintah:

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

    Perintah tersebut akan membuat direktori image hanya bisa diakses jika user sedang mengakses website Anda.


  1. Mencegah Akses Terhadap File .htaccess
    untuk mencegah pengunjung melihat file .htaccess kita, bisa menggunakan perintah dibawah ini pada file .htaccess:

    <Files .htaccess>
    order allow,deny
    deny from all
    </Files>


  2. Redirect Halaman
    File .htacces juga dapat difungsikan untuk melakukan redirect sebuah web atau sebuah halaman atau file html  yang terdapat pada sebuah web menuju halaman tujuan yang sudah ditentukan.Hal ini biasa dilakukan ketika sedang dilakukan perawatan website oleh pengelola website. Contohnya:
    Redirect  /home/html/web/index.html  http://namadomain/home.html
    Redirect permanent /olddirectory http://namadomain/newdirectory/

    – Pada baris pertama adalah perintah untuk redirect file index.html yang terdapat pada document root (/home/html/web) menjadi home.html
    – Pada baris kedua adalah perintah untuk redirect directory lama pada web anda diarahkan ke directory web yang baru.


  1. Canonicalization
    .htaccess yang paling umum adalah mengetahui apakah halaman home website Anda memiliki masalah canonicalization atau tidak. Canonicalization adalah satu website yang halaman home-nya memiliki format URL berbeda, seperti contoh: www.namadomain.com, namadomain.com, www.namadomain.com/index.html, namadomain.com/index.html.

    Namun canonicalization tidak baik untuk sistem SEO, karena trafik menuju website dihitung sebagai URL yang berbeda, meskipun isinya sama. Anda bisa mengatasi Canonicalization dengan menambah script pada file .htaccess Anda, script tersebut akan membuat berbagai format URL Anda menuju ke www.domainAnda.com:

    Options +FollowSymLinksRewriteEngine onRewriteCond %{HTTP_HOST} ^namadomain.comRewriteRule (.*) http://www.domainAnda.com/$1 [R=301,L]RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/

    RewriteRule ^index\.html$ http://www.domainAnda.com/ [R=301,L]