Programación y ejemplos de PHP, jQuery, HTML5, WordPress, MySQL, AMP y htaccess


Proteger directorios con contraseña en .htaccess con .htpassword

Vamos a ver como se puede proteger un directorio con contraseña usando .htaccess y .htpassword.

En muchos de nuestros proyectos necesitamos tener ciertos directorios de la web fuera del alcance de los usuarios, bien sea porque son directorios privados de administración o porque estamos trabajando con contenido que el usuario todavía no debe ver.

Otra manera de protección de directorios es la de permitir el acceso al directorio a determinadas IPs con las funciones htaccess deny y allow.

En una web se pueden proteger con contraseña estos 2 tipos de contenidos:

Hace varios meses hice un post sobre proteger nuestro servidor de prácticas de hotlinking. En ese caso puse ejemplos para que otras webs no nos roben ancho de banda de imágenes.

Proteger directorios con contraseña en .htaccess con .htpassword

En este ejemplo voy a poner el código necesario para proteger directorios con contraseña:

Os comento las líneas:

  • La primera línea indica que se va a proceder a una autentificación de usuario.
  • En la 2º indicamos el nombre que saldrá en la ventana de aviso.
  • En ‘AuthUserFile‘ tenemos que poner la ruta donde se encuentra el archivo .htpassword. Es importante que se ponga la ruta desde la raíz del servidor, por ejemplo: ‘/httpwebs/autentificacion/.htpassword‘.
  • En la 4º línea se indica que cualquier usuario válido en el .htpassword tiene acceso.

Ahora solo nos queda configurar el archivo .htpassword para dar de alta los usuarios con acceso al directorio:

En este archivo podemos poner tantos usuarios y password como queramos, pero debemos poner cada usuario y pass en una línea.

Se debe escribir el nombre de usuario, seguido de 2 puntos y el password.

Subir los archivos por FTP

El archivo .htaccess lo tenemos que subir por FTP al directorio que queremos proteger, y el .htpassword a donde queramos y hayamos referenciado en el .htaccess.

Restringir el acceso por usuario

En caso de tener varios usuarios en el archivo .htpassword podemos limitar el acceso a un usuario o a varios de ellos.

El cambio sería en nuestro archivo .htaccess, debemos cambiar esta línea:

por esta otra:

En caso de querer meter más usuarios sería de la siguiente manera:

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies