2012-09-17 32 views
12

He seguido las instrucciones y todavía no puedo proteger con contraseña mi sitio. Así es mi aplicación-nginx.config:Nginx - Protección de contraseña no funciona

server { 
    listen  80; 
    server_name Server_Test; 
    auth_basic   "Restricted"; 
    auth_basic_user_file /usr/local/nginx/conf/htpasswd; 

... 

} 

¿Dónde me estoy equivocando? Copié y pegué esto directamente desde un sitio tutorial.

Respuesta

13

Asegúrese de que Nginx pueda acceder al archivo de contraseña. Las rutas para auth_basic_user_file son relativas al directorio de nginx.conf. Así que si su nginx.conf se encuentra en /usr/local/nginx puede cambiar su directiva para:

auth_basic_user_file conf/htpasswd; 

y el archivo debe ser legible.

Este archivo debe ser legible por los trabajadores, ejecutándose desde el usuario sin privilegios . P.ej. cuando es ejecutado nginx en www puede establecer permisos como:

chown root:nobody htpasswd_file 
chmod 640 htpasswd_file 

- desde http://wiki.nginx.org/HttpAuthBasicModule

Cuestiones relacionadas