Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Php :: Proteggere i file d'inclusione dall'accesso diretto :: Indice Php

Proteggere i file d'inclusione dall'accesso diretto

Categoria: Php Inserito il: 16-06-2012 Stampa (15426 click)

Le richieste di assistenza nell'amministrazione del Web hosting non riguardanon quasi mai problematiche complesse, plausibilmente saranno veramente pochi i tickets riguardanti argomenti come il polimorfismo, l'ereditarietà multipla o la gestione dei namespaces; è invece molto probabile che gli utenti debbano superare semplici ostacoli come per esempio questioni inerenti la sicurezza delle inclusioni.

Un caso ricorrente è quello dei file contenenti gli headers, i footers o funzionalità accessorie come per esempio widgets per i commenti o muduli form; per evitare ripetizioni questi ultimi sono contenuti in genere in file richiamati tramite include() o require(), la loro utilità è dovuta essenzialmente al contesto di pagina, diversamente non dovrebbero essere accessibili direttamente.

Il codice seguente rappresenta un sistema abbastanza veloce per evitare l'accesso diretto ad un file denominato "sidebar.php" che per esempio potrebbe contenere un menù laterale:

<?php
if(@basename($_SERVER['PHP_SELF'])=='sidebar.php'){
@header("Location:index.php");
}
?>
La dinamica dello script si basa sulla funzione basename() che estrae il solo nome del file corrente dal percorso memorizzato nella variabile d'ambiente "$_SERVER['PHP_SELF']"; se il filename estratto è identico a quello del file per il quale non deve essere consentito l'accesso, allora header() produrrà un redirect verso la pagina passata come argomento a "Location".

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle più importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
Domini virtuali di Apache
Con il nome "domini virtuali", o Virtual Hosts, si identificano tutti gli Hosts che vengono configurati in un server Web... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti