Sto provando a proteggere con password una directory sul mio sito Nginx che contiene cose come phpMyAdmin, MemcacheMyAdmin e altre utilità di amministrazione.403 vietato - Nginx - utilizzando le credenziali corrette
Questa directory viene inserito nella directory principale del mio sito all'indirizzo:
domain.com/control/
Il percorso assoluto sul mio server e ':
/home/deployer/sites/domain.com/control/
ho creato un file .htpasswd nella directory utilizzando questo comando:
Il file è presente, di proprietà dell'utente "root" ed è 0644 autorizzazioni.
Nel file .conf per questo dominio in Nginx, utilizzo il seguente blocco di posizione per richiedere l'autenticazione.
location /control {
auth_basic "Restricted Area: Control";
auth_basic_user_file /home/deployer/sites/domain.com/control/.htpasswd;
}
Quando si accede alla directory protetta da password, sono richiesto un nome utente e una password. Inserisco le credenziali create in precedenza e quindi mi viene presentata una pagina di errore 403 vietata.
log di accesso mi dimostrano che sto colpendo il prompt di login e poi login come utente "admin":
64.123.456.225 - - [12/May/2013:17:30:48 +0000] "GET /control HTTP/1.1" 401 597 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31"
64.123.456.225 - admin [12/May/2013:17:30:48 +0000] "GET /control HTTP/1.1" 301 185 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31"
64.123.456.225 - admin [12/May/2013:17:30:59 +0000] "GET /control/memcache/ HTTP/1.1" 403 199 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31"
I registri degli errori mostrano la seguente:
2013/05/12 17:31:01 [error] 30462#0: *1 directory index of "/home/deployer/sites/domain.com/control/memcache/" is forbidden, client: 64.123.456.225, server: domain.com, request: "GET /control/memcache/ HTTP/1.1", host: "domain.com"
2013/05/12 17:31:09 [error] 30462#0: *1 directory index of "/home/deployer/sites/domain.com/control/memcache/" is forbidden, client: 64.123.456.225, server: domain.com, request: "GET /control/memcache/ HTTP/1.1", host: "domain.com"
Se io rimuovi il blocco Auth per Nginx .conf per quel sito, quindi posso accedere alla pagina normalmente.
Grazie per qualsiasi aiuto!
Questo è corretto. Ho aggiunto "index index.php;" al blocco di posizione e carica. Molto apprezzato. –
Per avere un'altra risposta con jgpatrick3, l'indice può anche essere un problema se si sta tentando di utilizzare autoindex, poiché l'autenticazione sovrascrive 'autoindex on' da una direttiva esterna - quindi è necessario" manualmente "riabilitare' autoindex on' nella zona autenticata. – Dubslow