Si queremos proteger nuestras carpetas y archivos de una forma rápida y sencilla, utilizando .htaccess lo tendremos la mar de fácil.
Lo primero que tendremos que crear es un archivo FUERA del directorio web, ya que es MUY IMPORTANTE que no tenga acceso web dicho archivo, ya que es el que va a contener los usuarios y contraseñas de acceso.
Por ejemplo, tendremos un archivo en /home/mi_web/conf/.htpasswd
En dicho archivo, tendremos que incluir los usuarios que van a tener acceso con sus respectivas contraseñas.
Para crear el contenido, podemos utilizar este generador de contraseñas. Además de generarlas nos indica el contenido que podría contener nuestro futuro .htaccess, pero yo al menos lo he probado sin éxito, con lo que solo nos interesa el contenido para el archivo .htpasswd que nos va a generar. Con lo que nos quedaremos en el apartado 1 del generador.
Por ejemplo, introduciendo como usuario: hola y contraseña pepito, haciendo clic en Submit, nos generará el siguiente contenido para nuestro .htpasswd:
hola:WiEJ1fKtqVFVw
Así que editaremos nuestro archivo /home/mi_web/conf/.htpasswd e incluiremos el contenido generado. En mi ejemplo:
hola:WiEJ1fKtqVFVw
Y guardaremos.
Ahora tenemos que crear un archivo llamado .htaccess en nuestra carpeta que queremos proteger. Por ejemplo queremos proteger una carpeta que tenemos llamada personal y que está en la raíz del directorio web (www):
/home/mi_web/www/personal/.htaccess
Y lo editaremos con el siguiente contenido:
Y listo, accedemos desde el navegador a dicha carpeta y nos pedirá un usuario y contraseña (en mi ejemplo hola y pepito), los cuales corresponden a los que tengamos .htpasswd.
Esta es una configuración totalmente válida y que en mi caso me ha funcionado sin problemas. Con lo que el funcionamiento en otros servidores debería de ser el correcto también. Y seguro que hay muchísimas formas y colores para hacer lo mismo pero de diferente manera.