Untuk file2 yang diakses secara langsung dengan browser, biasanya file tanpa
extension .inc, maka ditambahkan: define ('INDEX_AUTH', '1');
Untuk file dengan extension .inc, seperti sysconfig.inc.php, maka itu adalah
file yang di-include, tidak untuk diakses secara langsung via web browser.
Nah sekarang gimana caranya agar kalau ada orang yg iseng mengakses langsung
file2 .inc.php? Gimana dengan keamanannya? yang dilakukan di senayan adalah:
1. Dengan menggunakan file .htaccess. Ini solusi spesifik Apache. Hanya berlaku
di web server yang menggunakan apache dan mengaktifkan AllowOverride.
Perlindungan dengan .htaccess tidak akan berfungsi pada web server lain seperti
nginx, hiawatha, IIS, dll.
2. Karena itu dicari solusi yg independen alias tidak tergantung spesifik
Apache
(saya sendiri jika butuh web dengan skalabilitas tinggi, udah ga mau lagi pakai
Apache).
2. File .inc.php tidak boleh mengeluarkan output ke standard output alias
kosong. Kalau pun ada output, cuma tulisan semacam 'can not access this file
directly'. Ini terinspirasi dari joomla (hei meski saya fanatik drupal, boleh
dong belajar dari joomla :D)
3. Untuk mencapai tujuan nomor 2, maka di awal coding file dengan .inc.php,
ditambahkan pengecekan:
if (!defined('INDEX_AUTH')) {
die("can not access this file directly");
} else if (INDEX_AUTH != 1) {
die("can not access this file directly");
}
yang artinya kira2: cek apakah konstanta INDEX_AUTH sudah didefinisikan atau
jika didefinisikan apakah nilainya '1'. Jika tidak maka munculkan pesan "can
not
access this file directly".
Pada file yang diakses langsung, tanpa .inc, misalnya index.php, sebelum
meng-include sysconfig.inc.php ditambahkan baris:
define('INDEX_AUTH', '1');
yang mendefinisikan konstanta dengan nama INDEX_AUTH dan bernilai '1'.
sehingga apabila pengecekan diatas dilakukan, maka error tidak muncul.
Semoga bermanfaat :)
Hendro Wicaksono
________________________________
From: Indra Sutriadi الشافعئ <[email protected]>
To: [email protected]
Sent: Wed, February 9, 2011 1:26:09 PM
Subject: Re: [ics-isis] Insfrastruktur Plugin di SLiMS
Pada 9 Februari 2011 04:04, wira redi <[email protected]> menulis:
> halo mas indra, mas hendro untuk
>
> define('INDEX_AUTH', '1');
>
> ditambahkan di file mana ya? o iya saya coba di SLIMS Matoa pluginnya di
> bagian
>plugins
> ada tulisan can not access this file directly . Kira2 masalahnya apa ya?
> mohon
>bantuan.
Untuk modul plugins sendiri yang perlu ditambahkan baris tersebut adalah berkas:
index.php, setup.php, script.php
Untuk contoh plugin yang perlu ditambahkan baris tersebut pada berkas:
index.php
Semoga membantu dan selamat membuat plugin.
____________________________________________________________________________________
Don't get soaked. Take a quick peak at the forecast
with the Yahoo! Search weather shortcut.
http://tools.search.yahoo.com/shortcuts/#loc_weather
[Non-text portions of this message have been removed]
------------------------------------
--
Towards cyber libraries to support information society in Indonesia.
Joining ICS-isis by sending mailto:[email protected]
Visit ICS-Portal at http://digilib.binus.ac.id/ics/index.phpYahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ics-isis/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ics-isis/join
(Yahoo! ID required)
<*> To change settings via email:
[email protected]
[email protected]
<*> To unsubscribe from this group, send an email to:
[email protected]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/