PROBLEMA Evitare accesso diretto file PHP JSON

Pubblicità

snakom23

Nuovo Utente
Messaggi
103
Reazioni
1
Punteggio
38
Vorrei fare in modo che i miei file php, nei quali c'è codice JSON, non siano accessibili se ad esempio vengono aperti direttamente, quindi andando direttamente al loro link. Ho provato con diversi codici php in giro per il web e funzionano, ma mi precludono il funzionamento del mio sistema poiché inibiscono anche la funzione include dei file stessi in altri script php.

Quindi vorrei permettere l'utilizzo dal mio sistema, ma se provo ad accedere direttamente al file con URL vorrei restituire un errore.

Grazie
 
Non so se ti può aiutare, ma io uso una specie di "controller" di accesso... in pratica definisco nel file config una costante (es. define('SITE_KEY','quello_che_vuoi_come_valore'); che può assumere un banale '1.1' come 'quiquoqua' )... Può essere anche una costante che usi nel tuo sito (es. define(basepath, url_del_sito), define(versione_progetto, '1.1.2') ecc...), almeno non devi gestire cose superflue.

Poi, come prima riga nel file che voglio che non abbia un accesso diretto metto un if (!defined(SITE_KEY)) die ('accesso diretto non consentito'); , ma puoi usarlo in tutti i files del sito, almeno lo rendi un po' più solido sul lato sicurezza.

Uso sempre una costante e non una variabile solo perché le costanti sono più sicure, prima perché non sono modificabili tramite url. Per me è abbastanza elegante come soluzione ;)
 
Non so se ti può aiutare, ma io uso una specie di "controller" di accesso... in pratica definisco nel file config una costante (es. define('SITE_KEY','quello_che_vuoi_come_valore'); che può assumere un banale '1.1' come 'quiquoqua' )... Può essere anche una costante che usi nel tuo sito (es. define(basepath, url_del_sito), define(versione_progetto, '1.1.2') ecc...), almeno non devi gestire cose superflue.

Poi, come prima riga nel file che voglio che non abbia un accesso diretto metto un if (!defined(SITE_KEY)) die ('accesso diretto non consentito'); , ma puoi usarlo in tutti i files del sito, almeno lo rendi un po' più solido sul lato sicurezza.

Uso sempre una costante e non una variabile solo perché le costanti sono più sicure, prima perché non sono modificabili tramite url. Per me è abbastanza elegante come soluzione ;)
Grazie per la tua risposta esaustiva. il problema è dato dal fatto che io non includo il file php ma semplicemente utilizzo il codice json tramite questa funzione.

PHP:
function GetJsonFeed($json_url){    $feed = file_get_contents($json_url);    return json_decode($feed, true);}
 
Ultima modifica:
Pubblicità
Pubblicità
Indietro
Top