[ kentabyte @ 30.11.2005. 20:30 ] @
Naime imam par php skripti koji imaju u sebi podatke o konekciji sa bazom podataka.
Gde trebam staviti php skriptove tako da neko nebi slucajno upisao url skripta i tako
video poverljive podatke.Dali te fajlove treba postaviti u neki drugi direktorijum na serveru u kojem pristup fajlovima direktno zabranjen?
Dali neko zna cemu sluzi htacess fajl na apache serverima?
[ Nemanja Avramović @ 30.11.2005. 22:33 ] @
U php-u, dok ne echo-ujesh nesto, to se nece prikazati u browseru, tako da su ti svi podaci u php fajlu koji stoji bilo gde na serveru sigurni, osim u slucaju da pukne PHP pa da se izlista sadrzaj fajla.
Ako mozes da odes barem jedan korak iznad webroot-a, ubaci skripte tu, ili ih ubaci u poseban folder, a u taj isti folder ubaci .htaccess fajl sa sledecom linijom:
Code:
deny from all


Ovo poslednje nisam testirao.
[ SmilieBG @ 30.11.2005. 22:46 ] @
pa mozes nekoliko stvari da uradis, u zavisnosti od privilegija koje imas na serveru.

Po meni najbolje resenje je da stavis taj fajl van root-a i da ga tako pozivas u druge skritpe.

druga mogucnost je da stavis . pre imena fajla (default konfiguracija apache-a 'ignorise' ove fajlove, ukoliko nesto krene naopako pa se direktorijum izlista). Ovim sprecavas da dodju do imena fajla, ukoliko nesto krene naopako.

Kao sto je JaHvram rekao dokle god PHP radi kako treba, nemas puno brige.

Sto se tice .htaccess fajla, on sluzi da se konfiguracija apache-a promeni po direktorijumu. Recimo:

apache je podesen da nikoga ne pusta u: sajt.com/neki/dir;

ali ako stavis .htaccess u taj dir i u njega komandu da tu moze da udje samo neko sa odredjene IP adrese, onda ce taj .htaccess da 'zaobidje' konfiguraciju servera (ukoliko je ovo naravno podeseno a po defaultu jeste).

Na ovaj nacin, svaki korisnik moze odredjene stvari na svom sajtu da menja, sto se konfiguracije tice, bez da se 'cacka' po glavnom apache-om fajlu.

@JaHvram - ako stavi deny from all tu, onda niko nece moci da pristupi tom fajlu, pa ni sam sajt ;) Mislim da bi ovako trebalo:

Order allow,deny
allow from 127.0.0.1

Na ovaj nacin samo sajt (skripte sa sajta) ce imati pristuo tom diru.

Ali opet, ni ja ne tvrdim, nisam nikada testirao :)

Na mojoj masini, imam podeseno da mi je php_include totalno van webroota, pa tamo drzim sve conf fajlove :)

Poz,
Sale
[ sale83 @ 01.12.2005. 00:53 ] @
AKo se taj fajl INCLUDE-uje onda mozes da stavis na pocetku scripte:

Code:

if (stristr(htmlentities($_SERVER['PHP_SELF']), "konekcija.php")) {    Header("Location: index.php");    die();}

// ili

if (eregi("konekcija.php",$_SERVER['PHP_SELF'])) {
Header("Location: index.php");
die();

}


Ako hoces sa

.htaccess " TESTIRANO - JA KORISTIM"

Onda ovako nesto:

Code:

# Zabranjujemo direktan pristup za konekcija.php i .ht preko browsera
<FilesMatch "^(konekcija\.php|\.ht)">
 Deny from all
</FilesMatch>



[Ovu poruku je menjao sale83 dana 01.12.2005. u 10:10 GMT+1]