2011-09-29 18 views
5

Ho aggiunto un file .htaccess a una cartella per renderlo protetto da password. Vorrei impedire a tutti gli utenti di leggere il file .htaccess perché rivela la posizione del mio .htpasswd (non ho le autorizzazioni su questo server per mettere questo file all'esterno dell'albero html).Come impedire a qualcuno di leggere il mio file .htaccess?

Ho provato i suggerimenti a http://www.javascriptkit.com/howto/htaccess8.shtml, ma posso ancora leggere il mio .htaccess su un browser web. Ecco il mio .htaccess:

AuthName "Restricted Area" 
AuthType Basic 
AuthUserFile /home/www/users/mylogin/HTML/some_hidden_dir/.htpasswd 
AuthGroupFile /dev/null 
require valid-user 

<Files .htaccess> 
order allow,deny 
deny from all 
</Files> 

Cosa mi manca?

+0

"Non ho le autorizzazioni su questo server per mettere questo file al di fuori dell'albero html" - devi trovarti un fornitore di servizi meno efficiente :-) – paxdiablo

+0

È la mia università, gli studenti possono solo mettere i file nella loro cartella personale della home page ... – tiho

+2

La maggior parte delle configurazioni normali impedisce che i file che iniziano con un '.' vengano letti su HTTP. Perché hanno rotto questo? –

risposta

8

ho sempre usato questo metodo nel mio file di root HTACCESS principale e funziona come un fascino:

<Files ~ "^.*\.([Hh][Tt][Aa])"> 
order allow,deny 
deny from all 
satisfy all 
</Files> 

Maggiori informazioni su questo metodo da uno dei miei preferiti:

http://perishablepress.com/press/2008/05/20/improve-site-security-by-protecting-htaccess-files/

+0

Grazie, apprezzo la risposta, ma non funziona per me, posso ancora leggere il file .htaccess. Sto iniziando a sospettare che sia il server web che non è configurato correttamente ... – tiho

+0

Dove stai aggiungendo lo snippet? assicurati di aggiungerlo al tuo ** root ** htaccess –

+0

Non lo ero, ma non fa differenza. – tiho

Problemi correlati