Konfigurasi .htaccess untuk Index.php & URL di CI


area-tips&trik

Konfigurasi .htaccess untuk Index.php & URL di CI

File .htaccess adalah file teks sederhana yang terletak di direktori www atau di sebuah sub direktori folder www. anda bisa membuat atau mengedit file ini di Text Edito apapun juga dan kemudian meng-uploadnya ke direktori yang ingin anda ubah setting-nya. Pastikan bahwa file tersebut diupload dalam format ASCII bukan BINARY, . Hal tersebut memungkinkan server untuk mengakses file tapi mencegah user untuk mengakses file tersebut dari browser mereka..contoh dasar File .htaccess

Deny from All

bisa kita tambahkan script menjadi :

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
<Files "*.tpl">
Order Allow,Deny
Deny from All
allow from all
</Files>

fungsi dari codingan diatas :

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

menghilangkan tampilan index.php

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

menyingkat URL menjadi lebih pendek

<Files "*.tpl">
Order Allow,Deny
Deny from All
allow from all
</Files>

Untuk mencegah user mengakses file .htaccess
diatas perintah singkat wat .htaccess tpi kita bisa menambahkan juga dengan perintah sperti ini

ErrorDocument 500 /error.html
Override SSI Settings

berfungsi untuk membuat perintah error sesuai dengan keinginan kita sendiri

order deny,allow
deny from 123.456.789.000
deny from 456.78.90.
deny from .aol.com
allow from all

fungsinya untuk memblok ip atau website tertentu

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

berfungsi untukmencegah orang lain mengakses images secara langgsung

RewriteCond %{HTTP_HOST} !^(www|subdomain) [NC]
RewriteRule ^(.*)$ http://www.domain.tld/$1 [L,R=301]

fungsinya jika kita punya banyak subdomain dan ingin menghilangkan www didepan subdomain kita maka kita harus menggunakan separator operator (OR) ” | ”

seting wat .htaccess dah beres

Fahmi

We’re still Pioneers, We Barely Begun. Our Greatest Accomplishments cannot be behind us, cause our destiny lies above us.

3 Comments

  • dwi cahyono
    March 16, 2014 at 4:54 pm

    terima kasih tutorialnya saya jadi mengerti apa arti dari perintah di htaccess, tapi saat ini saya mengalami kesulitan karena berganti os yang semula windows sekarang menggunakan ubuntu sauces (13), saat mengakses index tidak bermasalah tapi bila mengakses link muncul pesan Not Found

    The requested URL /okeasli/produk/detail/sdl100034-kolam-mandi-bayi-bebek was not found on this server., bila saya lihat di php ini sudah on mode_rewrite.so nya

    mohon pencerahannya.

    • Fahmi
      March 21, 2014 at 6:55 pm

      ada banyak beberapa faktor, untuk lebih detail mungkin bisa di copas .htacccess nya yang anda pake.

  • Vivi
    November 28, 2016 at 1:58 pm

    RewriteEngine on

    RewriteRule home$ index.php?modul=home [L]
    RewriteRule aboutus index.php?modul=aboutus [L]
    RewriteRule product-category index.php?modul=kategori [L]
    RewriteRule contact index.php?modul=contact [L]
    RewriteRule new-product index.php?modul=new-products [L]
    RewriteRule ^product-([0-9]+)-([0-9]+)-([0-9]+)-(.*).html$ index.php?modul=products&idkateg=$1&batas=$2&page=$3 [L]
    RewriteRule ^detproduct-([0-9]+)-([0-9]+)-(.*).html$ index.php?modul=detproducts&idkateg=$1&idsub=$2 [L]
    RewriteRule ^search-product.html$ index.php?modul=cariproduk [L]
    #RewriteRule ^product-(.*).html$ index.php?modul=products&idkateg=$1 [L]

    #Options All -Indexes

    kalau saya menambah link catalague apa scriptnya juga catalogue index.php?modul=catalogue [L] ???

Leave a Reply