Foros del Web » Administración de Sistemas » Apache »

bloquear carpeta web

Estas en el tema de bloquear carpeta web en el foro de Apache en Foros del Web. Mi pregunta es la siguiente, ¿Como puedo bloquear una carpeta web y sus archivos? Tengo un sistema en donde se entra mediante un usuario y ...
  #1 (permalink)  
Antiguo 29/12/2010, 17:24
Avatar de SymarCs  
Fecha de Ingreso: abril-2010
Mensajes: 67
Antigüedad: 14 años, 7 meses
Puntos: 1
bloquear carpeta web

Mi pregunta es la siguiente, ¿Como puedo bloquear una carpeta web y sus archivos?


Tengo un sistema en donde se entra mediante un usuario y contraseña, el index (formulario de login) envia los datos (usuario y contraseña) a un segundo script (cgi/login.php) donde hace la validacion y verificacion y despues ingresa al sistema.

El problema es que en la carpeta cgi tengo mas scripts como funciones.php, validadores, etc que deben estar protegidos es decir que no se pueda entrar a la carpeta direcatemente si se teclea la ur.

Si coloco un .htaccess en esa carpeta se bloquea completamente es decir no me deja entrar ni tecleando la url ni desde los demas archivos, es decir, desde index.php envio los datos a cgi/login.php (ya con el .htaccess) no me permite entrar me marcaa que no tengo permisos para acceder.

Como puedo hacer esto bloquear la carpeta y los archivos para que no puedan ser accedidos directamente si se teclea la url, solo permitir el acceso si proviene de ciertas paginas o si se hace un include o require.
  #2 (permalink)  
Antiguo 29/12/2010, 18:15
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: bloquear carpeta web

Más que proteger tu carpeta, a lo sumo usar la directiva -Indexes en .htaccess
lo que tendrias que hacer es proteger las scripts con el mismo php

Supongamos, cuando haces el login desde el form , estarás haciendo un "post", y en tu login.php haces


if(!isset($_POST['variable'])){
header('Location: /index.html')
}else{
## procesas
}

En el resto podés hacer algo similar con alguna variable de sesion que se cree tras validación.

Para prevenir el acceso si tipean directamente en la barra de direcciónes, podés usar la variable
$_SERVER['HTTP_REFERER']; ya que cuando se tipea directamente esta no existe.

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: bloquear, carpetas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:08.