Diskuze: základní dotaz ohledně PHP include
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Normální uživatel by se adresu logovacího souboru neměl vůbec dozvědět. Z kódu stránky PHP kód nevyčte.
Pro úplné vyloučení takové situace můžete kontrolovat, jaké je adresa stránky, ve které se bude soubor zpracovávat a pokud bude stejná jako ten logovací soubor, tak skript neprovést:
if ($_SERVER["REQUEST_URI"] == "/log-panel.php") {
exit("Přístup zamítnut");
}
Může se to dělat přes soubor .htaccess, kde zakážeš přístup do zvolených složek nebo souborů, nebo to můžeš udělat tak, že na veřejné stránky vložíš na začátek např
define("MATE_PRISTUP", true);
a následně na všech ostatních stránkách ověříš, zda tato konstanta existuje
defined("MATE_PRISTUP") or die(); //vykopne uzivatele
Udělej si nějakou složku, do které naházíš soubory, které includuješ. Do té složky přidej soubor .htaccess, kde budeš mít
deny from all
to způsobí, že se do té složky nikdo přes URL nedostane (mělo by to hodit chybu 403 - forbidden (zakázaný přístup)). PHP se do té složky dostane, takže ty soubory v ní includovat můžeš.
Zobrazeno 4 zpráv z 4.