Pregunta

He creado un .htaccess y .htpasswd archivos, y los almacena en la carpeta que desea proteger y cuando navegaba a esa carpeta, se me pidió para el nombre de usuario y passowrd (almacenada en el archivo .htpasswd) después de entrar el nombre de usuario y contraseña, me ha dado un error interno del servidor 500. He utilizado los archivos tanto localhost (ventanas) y en un servidor web (Linux supongo) ambos dieron el mismo resultado mencionado.

Este es mi archivo .htaccess:

<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
AuthUserFile /.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user 
order deny,allow
¿Fue útil?

Solución

dudo de que su archivo .htpasswd es realmente situado en la raíz misma del sistema de archivos del servidor junto con /bin, /usr, /home, y otros (en lugar de dentro de la parte del sistema de archivos servido para navegadores web).

Según la documentación Apache ( 1 , 2 ), AuthUserFile espera una ruta de archivo (como si estuviera en ServerRoot, por lo general /usr/apache o similares, y tratando de localizar el archivo de la cáscara de Unix). No puede ser un URL, absoluta o relativa. Corregir su ruta de archivo .htpasswd en consecuencia.

Tenga en cuenta que si es posible, no se debe poner el archivo dentro de una carpeta .htpasswd public_html o htdocs, ya que cualquier error de configuración no sólo podría permitir el acceso no autorizado a los archivos que desea proteger, sino también los nombres de usuario y contraseñas con algoritmo hash autorizados.

Otros consejos

utilizar una ruta de alojamiento absoluta, por ejemplo:

/home/content/14/5267714/html/.htpasswd
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top