htacces para poner pass, no consigo hacerlo.

Iniciado por Pitufete, 19 Noviembre 2014, 18:11 PM

0 Miembros y 13 Visitantes están viendo este tema.

Pitufete

Lo pruebo en cuanto pueda y os cuento. Gracias.

_Enko

Mhh... "tema1.htpasswd"

Acordate que el archivo tiene que llamarse ".htpasswd". O tienes mal la ruta como te dijo MinusFour o bien el nombre del archivo es incorrecto. NO vas a poder crear ".htpasswd" en windows, asi que con algun FTB browser tendras que renombrarlo por ".htpasswd"

Saludos.

Pitufete

Revisaré ese dato del nombre y el slash.

Lo de crear el archivo....yo uso Mac, complicado?

_Enko

#13
Ni idea, tampoco importa mucho. Trata de crear ".htpasswd"
Es decir, es un archivo sin nombre, solo extención. Si no te deja no importa. Puedes tenerlo como un "cualquier_nombre.txt" pero una vez subido al servidor tendrás que cambiar el nombre. (Filezilla te deja)



Saludos.

Editado: eh... xD, me olvide que esas corriendo esto localmente. Me imagino que vas a poder :)
Si es Mac con windows, con la consola lo puedes crear. O puedes bajar uno y modificarlo. Es el tonot Windows Explorer que no te deja crear archivos sin nombre.

Pitufete

#14
No soy capaz de hacerlo, no consigo acceder con el pass.
Os explico lo que he probado nuevamente:
He creado el archivo .htaccess así:
Código (apache) [Seleccionar]
AuthName "Restricted Area"

AuthType Basic

AuthUserFile /miweb.com/privado/nombre1/.htpasswd

AuthGroupFile /dev/null

require valid-user

y lo he metido en la raíz de mi web, junto con el índex y demás.

Después he ido al .htpasswd y he creado el acceso desde esta web que cifra http://www.e2.u-net.com/htaccess/make.htm) y con lo que me ha dado lo he pegado así:
Código (bash) [Seleccionar]
Me caja @: ~ $ htpasswd -c /miweb.com/privado/nombre1/.passwd 'nombre de usuario'
Nueva contraseña: 1234
Vuelva a escribir la nueva contraseña:1234
Me caja @: ~ $ cat /miweb.com/.htpasswd
prueba:Dmrb3P4VUgfdw

Este archivo .htpasswd lo he metido dentro de /miweb.com/privado/nombre1

Al entrar en /miweb.com/privado/nombre1 me saca la ventana para poner el Nombre y Pass pero nada, le pongo "prueba - 1234" y no entra de ninguna manera. También he probado a poner el AuthUserFile AuthUserFile carpetaoculta/nombre1/.htpasswd pero tampoco.

Alguna alternativa?? Ya no se que hacer me desespero :(

Por cierto, en mi hosting tengo que meter la web en el siguiente directorio: /httpdocs/aquimetotodo

Mod: Usar etiquetas GeSHi no quote

MinusFour

Cita de: Pitufete en  1 Diciembre 2014, 12:23 PM
No soy capaz de hacerlo, no consigo acceder con el pass.
Os explico lo que he probado nuevamente:
He creado el archivo .htaccess así:y lo he metido en la raíz de mi web, junto con el índex y demás.

Después he ido al .htpasswd y he creado el acceso desde esta web que cifra http://www.e2.u-net.com/htaccess/make.htm) y con lo que me ha dado lo he pegado así:Este archivo .htpasswd lo he metido dentro de /miweb.com/privado/nombre1

Al entrar en /miweb.com/privado/nombre1 me saca la ventana para poner el Nombre y Pass pero nada, le pongo "prueba - 1234" y no entra de ninguna manera. También he probado a poner el AuthUserFile AuthUserFile carpetaoculta/nombre1/.htpasswd pero tampoco.

Alguna alternativa?? Ya no se que hacer me desespero :(

Por cierto, en mi hosting tengo que meter la web en el siguiente directorio: /httpdocs/aquimetotodo


Ok, me doy cuenta de algo:

Código (text) [Seleccionar]
File-path is the path to the user file. If it is not absolute, it is treated as relative to the ServerRoot.

Entonces si quieres usar una ruta relativa la tienes que usar en relacion a ServerRoot. Yo creia que lo hacia desde Document Root pero ya veo que no. Necesitas sacar el path absoluto de tu .htpasswd si lo vas a meter ahi. Veo que tienes una shell (es la de tu hosting?) solo navega hacia el directorio que contiene el archivo .htpasswd y escribes:

Código (bash) [Seleccionar]

realpath .htpasswd

_Enko

#16
Esta es la ruta que tuve que poner yo
Código (apache) [Seleccionar]

AuthUserFile  /users/webs/mi_pagina_web.com/htdocs/mi_directorio/.htpasswd


Es decir, la ruta es absoluta. Segun tu servidor la ruta va a cambiar.

Para sacar esa ruta puse un archivo php dentro de  mi_directorio con este codigo.
Código (php) [Seleccionar]

<?php
$dir 
dirname(__FILE__);
echo 
"<p>Full path to a .htpasswd file in this dir: " $dir "/.htpasswd" "</p>";
?>


Podes llamarlo como quieras, ejemplo "test.php",  una vez subido al servidor lo abres desde el navegador y te va a dar la ruta completa que necesitas.

Mod: Usar etiquetas GeSHi no quote

Pitufete

Uffff ufffff muy bien explicado, muy buena vuestra ayuda pero me pierdo totalmente ya que no controlo este tema. Me pondré más detenidamente a ver que consigo pero hay cosas que no entiendo ni una pizca.

_Enko

#18
Haz un archivo de texto con la extensión .php, ejemplo "mi_dir.php"

Coloca este texto adentro
Código (php) [Seleccionar]

<?php
$dir 
dirname(__FILE__);
echo 
"<p>Full path to a .htpasswd file in this dir: " $dir "/.htpasswd" "</p>";
?>



Haz el directorio "mi_carpeta_que_quiero_poner_contraseña" sin el .httacces y httpswd para que puedes acceder alli.

Sube el arhvivo que creaste "mi_dir.php" a la carpeta esa

Una vez subido, abri la pagina www.miweb.com/mi_carpeta_que_quiero_poner_contraseña/mi_dir.php

En el navegador te va a salir el mensaje:
Full path to a .htpasswd file in this dir:..........................................

Copia crea el httaccess con ese directorio.

Hecho :)

Saludos.

Mod: Usar etiquetas GeSHi no quote.

Pitufete

#19
_Enko muy amable y muy agradecido por tu ayuda. Mañana lo pruebo y os cuento.




Esto se me esta resistiendo demasiado ya  :huh: :huh: :huy:

Esto es lo que he hecho _Enko:
1. He creado un archivo de texto y le he puesto el código que me has dejado
Código (php) [Seleccionar]
<?php
$dir 
dirname(__FILE__);
echo 
"<p>Full path to a .htpasswd file in this dir: " $dir "/.htpasswd" "</p>";
?>

2. Lo he renombrado a mi_dir.php
3. Lo he metido dentro de /miweb.com/privado/
4. He borrado los dos archivos .httacces y httpswd, los he eliminado de mi servidor.
5. Accedo a miweb.com/privado/mi_dir.php y me sale la pagina en blanco

He probado a poner el php dentro de /miweb.com/privado/nombre1 para probar y al entrar en /miweb.com/privado/nombre1 sale igual que antes.

No se si me falla algo o es que soy demasiado torpe pero...

Muchas gracias

Edito 1: Esto que comento me sucede con Safari. He probado a entrar con Chrome y sale este aviso:
Código (out) [Seleccionar]
Error del servidor
El sitio web ha detectado un error al recuperar la http://miweb.com/privado/mi_dir.php http://miweb.com/privado/mi_dir.php. Es posible que esta esté inactiva debido a tareas de mantenimiento o que se haya configurado de forma incorrecta.
A continuación se detallan algunas sugerencias:
Vuelve a cargar esta página más tarde.
Error de HTTP 500 (Internal Server Error): Se ha detectado una condición inesperada cuando el servidor intentaba atender la solicitud.


Por cierto, miweb.com corresponde al nombre real de mi pagina que lo sustituyo para evitar publicidad aquí.

EDITO 2
Acabo de rehacer todo y ahora si que me sale en Safari la ruta que necesitaba. Me pone esto:
Código (bash) [Seleccionar]
Full path to a .htpasswd file in this dir: /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd
He creado el archivo .htaccess así:
Código (apache) [Seleccionar]
AuthName "Restricted Area"

AuthType Basic

AuthUserFile /var/www/vhosts/miweb.com/httpdocs/privado/.htpasswd

AuthGroupFile /dev/null

require valid-user

Ahora donde meto el archivo .htaccess ??

Mod: Usar etiquetas GeSHi no quote. No hacer doble Post.