HTACCESS perfecto

HTACCESS perfecto


Bienvenid@ a HTACCESS perfecto

Con esta herramienta no tendrás que andar buscando en Internet cómo modificar tus archivos .htaccess. Al mismo tiempo te servirá para aprender más o afianzar tus conocimientos.

Objetivo

Construir un útil archivo .htaccess incluso sin conocimientos del lenguaje del servidor Apache. Hay muchas cosas interesantes que se pueden hacer con los archivos .htaccess para mejorar tu posicionamiento en buscadores, proteger tus archivos o mejorar tu sitio web. HTACCESS perfecto sirve tanto a webmasters noveles como avanzados haciendo que se pueda modificar archivos .htaccess con precisión, rapidez y el menor esfuerzo.

USO

Elige tu nivel de conocimientos: novato o avanzado. Cada vez que hagas algún cambio o modifiques algo en cada una de las pestañas pulsa el botón CAMBIAR en la parte superior izquierda. El sistema recordará y guardará los cambios. En la pestaña RESULTADOS podrás guardar el archivo, copiarlo o, incluso, enviarlo por email.

La pestaña con una estrella amarilla es una función aparte que permite crear unas directivas para el .htaccess que redirigirán a las visitas de tu web a otro sitio que quieras mientras haces cambios. También contiene un práctico generador de passwords por si quieres proteger algún directorio en tu sitio mediante un archivo .htpasswd. Los datos de esta pestaña especial no se guardan en tu sesión.

Funciones - Los datos se guardan hasta que termines de trabajar
  • Email, Descargar y/o Copiar & Pegar tu archivo .htaccess personalizado.
  • Permitir/Denegar listado de directorios.
  • Ocultar archivos o tipos de archivo del listado de directorios abiertos.
  • Archivos por defecto - Cambia o agrega archivos o tipos de archivo por defecto.
  • Generador de htpasswd - encriptador de passwords para htpasswd.
  • Configurar ruta para el archivo htpasswd.
  • Configurar ruta para el archivo htgroup.
  • Permitir/Denegar IPs o nombres de host.
  • Mensajes personalizados para la ventana de autenticación.
  • Orden por defecto de Allow/Deny (o Deny/Allow)
  • Configurar "Satisfy" a Any o All
  • Control de caché para 12 tipos de archivo comunes
  • Páginas de error personalizadas para 21 errores comunes.
  • Canonicalización - URLs con www o sin www!
  • Redirecciones 301 (permanentes)
  • Redirecciones 302 (temporales)
  • Ejecución de CGI con opciones por extensiones de archivo.
  • Server Side Includes con opciones por extensiones de archivo.
  • Symbolic Links
  • Forzar SSL y dónde.
  • Bloquear Spam Bots.
  • Bloquear Bots malvados.


Directorios?

Si no estás seguro, por favor, elige "Denegar" en el menú.



Esconder archivos en directorios abiertos ?

Archivos -(o tipos de archivo)- listados aquí serán ocultados del índice de los directorios.












Archivo por defecto?

Debes elegir nivel "avanzado" para acceder a esta función


Control de caché?


















*La Seccióon 3 de RFC 4329 declara application/x-javascript y text/javascript obsoletos - Usa JS en la parte de arriba de la lista en vez de estos dos últimos

Autenticación?

Permitir / Denegar?

Cumplir Algo / Todo?

Petición de Password?

Personaliza el mensaje (Ej.
Por favor, escribe tu Usuario y Contraseña)



Archivo .htpasswd?


La ruta a tu archivo .htpasswd: (ej. /home/tunombre/.htpasswd)


Archivo htgroup - opcional


La ruta a tu archivo .htgroup: (ej /home/tunombre/.htgroup



Debes elegir nivel "avanzado" para acceder a esta función



Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Páginas de error?

Por favor, lee la ayuda.




















Canonicalization?


Canonicalización consiste en decidirte por 'www o no www'

Escribe tu URL en la forma que la quieras y HTACCESS perfecto se encargará del resto.




O




Redirecciones?


Se requiere nivel avanzado para acceder a esta función

Escribe la ruta del servidor en "De" y la URL en "A"

301 Moved Permanently












302 Moved Temporarily











CGI - SSI - Symbolic Links

scripts CGI?

Se requiere nivel avanzado para acceder a esta función

Server Side Includes?

Se requiere nivel avanzado para acceder a esta función

Symbolic Links?

Si no sabes lo que vas a hacer, por favor, salta esta pestaña




Bad Bots

?
CherryPickerSE
CherryPickerElite
EmailCollector
EmailSiphon
EmailWolf
ExtractorPro
Wget
?
BlackWidow
Bot mailto:craftbot@yahoo.com
ChinaClaw
Custo
DISCo
Download Demon
eCatch
EirGrabber
EmailSiphon
EmailWolf
Express WebPictures
ExtractorPro
EyeNetIE
FlashGet
GetRight
GetWeb!
Go!Zilla
Go-Ahead-Got-It
GrabNet
Grafula
HMView
HTTrack
Image Stripper
Image Sucker
Indy Library
InterGET
Internet Ninja
JetCar
JOC Web Spider
larbin
LeechFTP
Mass Downloader
MIDown tool
Mister PiX
Navroad
NearSite
Net Vampire
NetAnts
NetSpider
NetZIP
Octopus
Offline Explorer
Offline Navigator
PageGrabber
Papa Foto
pavuk
pcBrowser
RealDownload
ReGet
SiteSnagger
SmartDownload
SuperBot
SuperHTTP
Surfbot
tAkeOut
Teleport Pro
VoidEYE
Web Image Collector
Web Sucker
WebAuto
WebCopier
WebFetch
WebGo IS
WebLeacher
WebReaper
WebSauger
Website eXtractor
Website Quester
WebStripper
WebWhacker
WebZIP
Wget
Widow
WWWOFFLE
Xaldon WebSpider
Zeus

email
Email
Debes tener Flash 10 instalado para descargar este archivo.
Save Results
copy
Copy Results

Kill Session
 

Solo YOstar



? ?


Asegúrate de que tu IP es correcta (especialmente si usas algún proxy)



htpasswd Password Generador

 

Debes tener Usuario y Password para encriptar la password.

Debes escribir un usuario para generar la password.

Esta información NO se guarda.






Dígitos


Copia UserPass en una nueva linea de tu archivo.htpasswd



Cuando se accede a un directorio que no tiene un archivo por defecto para ser abierto el servidor mostrará todos los archivos que hay en ese directorio. Aquí puedes elegir entre permitir un "directorio abierto" que muestre la lista de archivos o denegar el acceso y mostrar un mensaje de prohibido.


Haz click en la opción que prefieras:

Allowed Open Directory   Or      Deny Open Directory

Ocultar archivos cuando el directorio abierto está PERMITIDO

Esto ES recursivo. Los archivos también serán ocultados en los subdirectorios.


Puedes ocultar archivos específicos, o todos ellos o una extensión específica si has permitido un "directorio abierto".

Si quieres ocultar un archivo específico llamado "privado.txt" deberás escribir:
privado.txt
Si quieres ocultar todos los archivos con la extensión .txt puedes usar un asterisco (wild card)
*.txt

Esto oculta el o los archivo(s) de la lista del directorio. Si has elegido denegar el acceso en la primera opción no tiene sentido rellenar esto.

Archivos por defecto

La ruta del archivo es para el directorio local en el que se subirá el .htaccess


Puedes listar aquí tipos de archivo que quieres que el servidor use por defecto - El orden es importante.

Si el servidor no encuentra la primera opción en el directorio automáticamente cargará la segunda y así sucesivamente. Si, por ejemplo, tienes un index.php y un index.html en el mismo directorio aquí es donde decides cuál debe cargarse primero o por defecto.

Se permiten comodines (wild card). Esto significa que si escribes el nombre de un archivo sin extensión, por ejemplo

index

el servidor cargará cualquier archivo llamado "index" independientemente de su extensión. SIN EMBARGO se observará un menor rendimiento con este tipo de configuración por lo que es muy recomendable usar siempre un nombre de archivo con su extensión. Así

index.html

Cache Control

Escribe cuánto tiempo será almacenado en caché cada tipo de archivo.

La unidad de tiempo es la que prefieras.

1 año = 12 meses = 52 semanas = 365 días = 8760 horas = 525600 minutos = 31536000 segundos

Las unidades de tiempo funcionan igual en singular o plural. En el .htaccess aparecerán en inglés

1 year = 1 yearS

*La sección 3 del RFC 4329 declara como obsoleto: application/x-javascript y text/javascript. Han sido incluidos aquí de todas formas por "motivos históricos", pero deberín evitarse. Se usará en su lugar la forma JS que se incluye al principio y que es procesada como application/javascript.

Authenticación

Esta página está concebida para trabajar de forma independiente o junto al resto de funciones.


Si escribes una dirección IP en la lista de permitidas pero no configuras "Permitir/Denegar" al principio se configurará automáticamente a "Denegar por defecto". Se asume que solamente quieres permitir el acceso a una(s) específica(s) IP(s).


Si escribes una dirección IP en la lista de denegadas pero no configuras "Permitir/Denegar" al principio se configurará automáticamente a "Permitir por defecto". Se asume que solamente quieres denegar el acceso a una(s) específica(s) IP(s).


Si escribes la ruta a tu archivo .htpasswd peron no especificas IPs permitidas o denegadas cualquiera con el nombre de usuario y password podrá acceder al area bloqueada.


Si escribes la ruta a tu archivo .htpasswd y especificas una dirección IP permitida el sistema configurará "Denegar por defecto" y "Cumplir algo" (de los criterios: password o IP permitida).


Si escribes la ruta a tu archivo .htpasswd y especificas una dirección IP denegada el sistema configurará "Permitir por defecto" y "Cumplir todo" (siempre habrá que usar la password aunque la dirección IP específicamente denegada no podrá acceder de ninguna manera)


En cualquier caso puedes cambiar los valores que se configuran automáticamente eligiendo otras opciones en los menús desplegables.


OJO: tu dirección IP podría no ser mostrada correctamente. Especialmente si te conectas a través de un proxy.

.htpasswd

Paso 1

Necesitas crear un archivo en texto plano llamado htpasswd.txt

Paso 2

Usa el generador de passwords para encriptar la password o contraseña (la pestaña con la estrellita amarilla). Pega el resultado de "userpass" en tu archivo htpasswd.txt. Si tienes varios usuarios y passwords pon cada uno en una linea distinta.

Notas

Las passwords en el archivo htpasswd no van en texto plano sino que están encriptadas. El generador de passwords utiliza el sistema de encriptación MD5, un proceso que no es reversible. Esto significa que si olvidas la password tendrás que generar una nueva.

Paso 3

Después de entrar tu usuario:password en el archivo htpasswd.txt guárdalo y súbelo al servidor.

NO coloques el archivo htpasswd dentro del directorio público public_html (o www) o cualquiera de sus subdirectorios.
MAL: /home/tunombre/public_html/htpasswd.txt


COLÓCALO en el directorio que contiene a tu directorio public_html
BIEN: /home/tunombre/htpasswd.txt

Si puedes teclear en la barra de direcciones de tu navegador http://tusitioweb.com/htpasswd.txt y ves el contenido del archivo - ALGO HAS HECHO MAL.

Excepción: si sólamente tienes acceso a tu directorio public_html entonces tendrás que poner tu htpasswd allí.

Explicando la excepción: Normalmente no pasará nada porque pongas el htpasswd en el directorio público. Tampoco es nada ilegal. Simplemente es una mera precaución para no facilitar el que alguien con un conocimiento técnico especial pueda hacerse con ese archivo. Es verdad que la password está encriptada y el proceso no es reversible aunque existen técnicas de fuerza bruta que podrían intentarse si alguien se hace con el archivo y puede trabajar en él offline tranquilamente. En resumen: no es grave colocarlo en el directorio público pero si puedes, evítalo.

Paso 4

Renombra el archivo. Una vez que lo has subido al servidor renómbralo como sigue.

De

htpasswd.txt

A

.htpasswd

Paso 5

Escribe la ruta completa de tu arhivo .htpasswd. en el formulario. Date cuenta que no es la dirección tal como la escribes en un navegador sino la ruta absoluta del servidor. Es algo que debes conocer.

Fin


Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Permitir / Denegar

Si no seleccionas algo en el menú "permitir/denegar" será seleccionado automáticamente en base a lo que el sistema entienda que quieres hacer.

Permitir por defecto

Si solamente tienes una dirección IP en la columna de IPs permitidas, el sistema se configurará "Allow,Deny" y de esta forma sólo permitirá a la IP especificada entrar en el area restringida.

Denegar por defecto

Si solamente tienes una dirección IP en la columna de IPs denegadas, el sistema se configurará "Deny,Allow" y de esta forma sólo denegará a esta IP especificada el acceso al area restringida.


Denegar por defecto

Si escribes IPs en ambas columnas: IPs permitidas e IPs denegadas, el sistema se configurará "Allow,Deny" y de esta forma sólo permitirá a la IP especificada entrar en el area restringida.


Para cambiar la opción elegida automáticametne basta con cambiarla en el menú desplegable.


Por IPs

Para bloquear una IP específica basta ponerla en la caja de denegar.

Denegar:

123.456.789.012

Bloquear rangos de IPs

Puedes bloquear un rango entero de IPs simplemente no escribiendo el último octeto.

Denegar:

123.456.789.

observa que dejamos el tercer punto pero sin escribir números después. Cualquier número de IP tras el tercer punto será bloqueada (a menos que se especifique lo contrario en permitidas).

Bloquear IPs con excepciones

Para bloquear un rango de IPs EXCEPTO UNA.

Denegar:

123.456.789.

Permitir:

123.456.789.012

Esto bloquerá todas las IPs del rango 123.456.789.xxx EXCEPTO 123.456.789.012 que tendrá permiso para acceder.


Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Petición de Password

Puedes personalizar el mensaje que aparecerá en la ventana de autenticación (la parte que se ve en la imagen entre dos flechas rojas)

Auth Box Example

Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Permitir / Denegar

Orden de permitir / denegar - La manera más fácil de pillar el truco es pensar al revés

Lo que está en último lugar es el factor determinante.


Permitir por defecto = Order Deny,Allow - Lo que no es denegado se permite.


Denegar por defecto = Order Allow,Deny - Lo que no es permitido, se deniega.
Si NINGÚN criterio es elegido para permitir entonces se deniegan todos los accesos.


Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Directiva "Cumplir"

Ejemplo
AuthUserFile /right/here
AuthGroupFile /dev/null
AuthName "Please enter your username and password"
AuthType Basic
require valid-user
order deny,allow
allow from 192.168.1
deny from 192.168.2
Satisfy Any

Cumplir algo (Satisfy Any) El usuario sólo tiene que cumplir una de las condiciones - en este ejemplo - Si el usuario tiene una IP que comienza por 192.168.1.* entonces no se le preguntará por la password. - El acceso se le permite porque cumple ALGUNA de las condiciones..


Ejemplo
AuthUserFile /right/here
AuthGroupFile /dev/null
AuthName "Please enter your username and password"
AuthType Basic
require valid-user
order deny,allow
allow from 192.168.1
deny from 192.168.2
Satisfy all

Cumplir todo (Satisfy All) El usuario debe cumplir TODAS las condiciones - en este ejemplo - Aunque el usuario tiene una IP permitida 192.168.1.* todavía tiene que poner la Password para continuar. El acceso se permite si se cumplen TODAS las condiciones..


En otro caso si el usuario tiene una IP que empieza por 192.168.2 el acceso le será denegado tenga una Password o no.


Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Solo YO - Modo desarrollador

DEBES ESTAR COMPLETAMENTE SEGURO DE QUE LA IP ES CORRECTA

No necesitas rellenar formularios. Simplemente pulsa el botón APLICAR y luego copia y pega el resultado en tu .htaccess. Este truco redirigirá a cualquier visita a donde tú quieras permitiéndote hacer reformas a tu sitio en privado.

OJO: esta información no se guarda.

Usando la función "Solo YO" - la información NO se guarda en tu sesión de usuario. Tan pronto como refresques o abandones esta página esta información desaparece. El resto de los datos de la sesión permanece intacto.


Advertencia necesaria:

Si estás trasteando con la autenticación y fallas demasiadas veces el cortafuegos del servidor podría bloquear tu dirección IP. De esa forma no podrías acceder siquiera a tu panel de control. En ese caso tendrías que contactar con el servicio técnico de tu hosting o esperar pacientemente a que el bloqueo auto-expire.

Si le explicas al servicio técnico de tu hosting que vas a jugar con las opciones de autenticación en tu htaccess seguramente podrán poner tu IP en una lista blanca y así evitarás el inconveniente.

Hay dos formas de configurar páginas de error. Puedes redirigir a una página de error existente o también puedes escribir el código de error directamente en tu archivo .htaccess sin necesidad de tener una página específica.

Redireccionando a páginas de error

La ruta del archivo debe ser desde la raíz del dominio independientemente de dónde situes tu .htaccess.

Simplemente introduce la ruta a tu página de error que debe estar en el directorio público: public_html (o www). Si tienes un directorio llamado "error" dentro de tu directorio público (public_html o www) y tus páginas tienen el nombre del código de error que representan entonces deberías introducir en la caja "404 Not Found":

/error/404.html

Si hay algún problema con la ruta relativa usa la ruta absoluta: http://www.tusitio.com/error/404.html


Páginas de error sin archivos

En vez de redirigir a una página de error puedes usar html directamente en el archivo .htaccess para emular una página de error. Hay algunas restricciones así que si quieres una página de error chula deberías usar el sistema de redirección.

"<h1>La página solicitada <b>NO</b> existe. Por favor, ve a la página de  <a href=\"#\">INICIO</a></h1><br />o <a href=\"#\">pulsa aquí</a> para ver el mapa del sitio.

Por favor DATE CUENTA que tu código debe empezar con unas dobles comillas, pero no debe terminar con ellas. Mira el ejemplo de nuevo. Tampoco debe haber saltos de linea. Debe escribirse todo en una sóla linea. Obviamente debes sustituir # por los enlaces correctos.


Las dobles comillas dentro del código deben llevar una barra invertida antes.

Si algún campo se deja sin cubrir se usarán las páginas de error por defecto del servidor.

Escribe la URL en la caja "www" o "no www" según lo que prefieras.

NO www

Si quieres que tu URL no tenga www.

tusitio.com

SI www

Si quieres que tu URL tenga siempre www. escribe en esta caja.

tusitio.com

Esta función suporta páginas y directorios. Si se trata solo de una redirección temporal (mientras remodelas tu sitio, por ejemplo) usa el formulario de "redirecciones temporales". Si es permanente, usa el de "redirecciones permanentes".


La ruta deberá ser la de la raíz del dominio independientemente de dónde esté el archivo .htaccess.

IMPORTANTEEs crucial que el .htaccess esté en el mismo nivel o superior que las páginas implicadas en la redirección

 

Por ejemplo:

Si quieres redirigir http://www.tusitio.com/path/a/viejo_archivo.html a http://www.tusitio.com/path/a/nuevo_archivo.html y tú estás trabajando con un .htaccess ubicado em http://www.tusitio.com/path/a/.htaccess no abrí problema alguno.

 

NO uses http://www.tusitio.com en el campo "De" - solamente en el campo "A"

De:

/path/a/viejo_archivo.html

A:

http://www.tusitio.com/path/a/nuevo_archivo.html

Página

Para redirigir viejapagina.html a nuevapagina.html usa:

De:

/path/a/viejapagina.html

A:

http://www.tusitio.com/nuevapagina.html

Directorio

Para redirigir viejodirectorio a un nuevodirectorio:

De:

/path/a/viejodirectorio

A:

http://www.tusitio.com/nuevodirectorio/

Scripts CGI

Debes permitir la ejecución de CGI (ejecutar CGI). Para permitir que algunas extensiones comunes se ejecuten como CGI activa las otras opciones. "Procesar esto como CGI" hace que todos los archivos de los directorios afectados por el .htaccess se procesen como CGI.


Deja todo en OFF a menos que sepas lo que estás haciendo.

Server Side Includes

¿Quieres permitir Server Side Includes?

Ejecutar *.htm como server-side includes

Ejecutar *.html como server-side includes

Ejecutar *.shtml como server-side includes

Deja todo en OFF a menos que sepas lo que estás haciendo..

Enlaces simbólicos & SSL

Follow 'Symbolic Links if Owner Matches' es lo típico

El servidor sólo seguirá los enlaces simbólicos si el archivo o directorio diana es propiedad del mismo usuario que el enlace.

Forzar SSL? - Redirige http a https

Email Bots

Estos bots son conocidos por buscar direcciones de correo con fines inconfesables.

Son filtrados por su "User Agent" y se les da un mensaje de prohibición.

Por supuesto puedes agregar otros manualmente en tu .htaccess.

Bots Malvados

Estos bots son conocidos por ignorar el archivo robots.txt.

Son filtrados por su "User Agent" y se les da un mensaje de prohibición.

Por supuesto puedes agregar otros manualmente en tu .htaccess.

Resultados

guarda, copia & pega or envía por email.