Impedire esecuzione diretta dei file

otto9due

Utente Attivo
22 Feb 2014
591
25
28
Ho creato una piccola applicazione che dalla pagina index include le altre varie pagine e script vari per comporre le diverse schermate.
Quello che vorrei ora è impedire che i vari file sparsi altrove possano essere raggiunti o eseguiti direttamente, tranne che ovviamente tramite l'include / require dalla index.

Il mio sistema di login usa le sessioni, potrei andare ad inserire pagina per pagina e script per script il controllo sulla sessione ma volevo capire se c'era qualche sistema più semplice, e sicuro. Grazie
 
Avevo letto di questa cosa, ma in sostanza è sempre un qualcosa che va fatto pagina per pagina. Pensavo ci fosse qualcosa da poter configurare ad esempio in un file .htaccess, o una stringa apposita per lo scopo.
 
Intanto volevo ringraziarti per le risposte. Si sono tutti metodi efficaci. E che mi sto scervellando per trovare un sistema per inserire il controllo sulla login ed eventualmente anche sul file ma volevo evitare di avvolgere tutte le pagine in un if.
 
Ciao!
Nessun problema, seguendo l'ultimo link che ti ho dato risolvi con quelle poche righe messe nell'.htaccess (in caso di apache). Riporto il codice per comodità:

Apache config:
<Files *.php>
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Files>

<Files index.php>
    Order Allow,Deny
    Allow from all
</Files>

Se sei in nginx lo devi fare con le location.

Nessun if è rischiesto, è una configurazione del webserver.
Fammi sapere :)
 
Ma a questi file non ci posso accedere neanche tramite ajax. Purtroppo ho provato ma sia con che senza ip del server (seppure questa è una cosa comunque noiosissima) ajax non va.
 
Ultima modifica:
Alla fine ho risolto sempre con le vecchie care sessioni. Se voglio lasciare tutto in root, verifico che siano attive e che vi sia la login attiva. Altrimenti il file non è accessibile. Per le pagine incluse verifico come mi hai consigliato la costante + la login per ulteriore sicurezza. Grazie
 

Discussioni simili