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

Home ~ Apache :: Consentire l'accesso ai file da una pagina specifica con .htaccess :: Indice Apache

Consentire l'accesso ai file da una pagina specifica con .htaccess

Categoria: Apache Inserito il: 14-08-2012 Stampa (19964 click)

Ipotizziamo che abbiate creato un'area riservata a cui possano accedere soltanto i vostri clienti, per quanto riguarda le pagine la protezione dovrebbe essere garantita dalle sessioni risolvendo il problema degli accessi indesiderati; ma come fare nel caso in cui si voglia consentire unicamente agli utenti loggati di visualizzare i file contenuti all'interno di una cartella? Una soluzione potrebbe essere quella di autorizzare il download soltanto da una pagina specifica.

Immaginiamo quindi di avere all'interno della nostra area riservata un file protetto da sessioni, denominato per esempio "utente.php", e di volerlo definire come unica porta d'accesso ai documenti disponibili tramite autenticazione; per far questo sarà possibile creare un semplice ".htaccess" destinato a contenere le seguenti istruzioni da inviare al Web server:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !(www.)?sito.it/area_riservata/utente.php
RewriteRule .* - [F]

In questo modo, tutte le richieste non provenienti dal REFERER HTTP passato come argomento verranno rifiutate; naturalmente sarà possibile definire più URL per l'accesso ai file nel caso se ne presenti l'esigenza:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !(www.)?sito.it/area_riservata/utente.php
RewriteCond %{HTTP_REFERER} !(www.)?sito.it/admin/gestione_file.php
RewriteRule .* - [F]

Entrambe le URL saranno autorizzate anche nel caso vengano passati attraverso di esse dei parametri in querystring.

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
Funzioni PHP per Apache II
La funzione apache_lookup_uri() viene utilizzata per eseguire una richiesta parziale della URI specificata come parametro e ne restituisce le relative... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti