lunes, marzo 25, 2013

15 trucos .htaccess para webmasters

Los archivos .htaccess (Archivo de Acceso de Hipertexto) es una herramienta de configuración muy potente en el servidor web Apache. El servidor web Apache tiene un número de opciones de configuración que están disponibles para el administrador del servidor. El htaccess. es un simple archivo de texto ASCII situado en el directorio raíz del sitio Web. Podemos puede crear y modificar un archivo. htaccess con un editor de texto como el bloc de notas.
Aquí, en esta entrada del blog les dejo 16 útiles consejos y trucos para el .htaccess  para configurar su servidor web.
Como un archivo .htaccess es muy potente y un error de sintaxis en su configuración ligera puede provocar un mal funcionamiento grave en el servidor. Para evitar esto aconsejamos  mantener una copia de seguridad de todos tus archivos desde el servidor antes de trabajar con el archivo htaccess.
1. Crear paginas de error personalizadas
Creación de una página de error personalizado con. htaccess en Apache Linux es una tarea muy sencilla. Con un editor de texto (Para windows Notepad ++ para Linux gedit)  editamos nuestro archivo .htaccess. Podemos dar a las paginas de error diseños personalizados con el fin de atrapar a los visitantes que llegan a nuestro sitio web después dar clic en un enlace roto.
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
2. Configurar la zona horaria en el servidor
SetEnv TZ America/Houston
3. Bloquear direcciones IP Utilizando htaccess
En algún momento debemos  evitar que determinadas IP accedan a nuestro sitio. Esta tarea es bastante simple. Todo lo que debemos  hacer es poner el siguiente código dentro nuestro archivo htaccess.
allow from all
deny from 145.186.14.122
deny from 124.15
Cuando alguien intenta acceder a su sitio desde una IP prohibida  este recibirá un mensaje de error 403 de acceso prohibido (403 error access forbidden).
4. Redirecciones 301
Redirecciones permanentes para mover enlaces antiguos o rotos
Redirect 301 /d/file.html http://www.htaccesselite.com/r/file.html
5. Establecer un correo electronico para el administrador del servidor
El uso de este código se puede especificar la dirección de correo electrónico por defecto para el administrador del servidor.
ServerSignature EMail
SetEnv SERVER_ADMIN default@domain.com
6. Protección Hotlinking con htaccess
Es muy importante porque cualquier persona que realece un enlace a las imágenes de nuestro sitio web consumira nuestro ancho de banda de su servidor. El siguiente código nos ayudará a prevenir eso.
Options +FollowSymlinks
# Protect Hotlinking
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domainname.com/ [nc]
RewriteRule .*.(gif|jpg|png)$ http://domainname.com/img/hotlink_f_o.png [nc]
7. Bloquear todas las solicitudes de agente de usuario.
mediante la creación de un perfecto lista de prohibición de htaccess, puedes impedir que todos los agentes de usuario no deseados que mantendrá su carga en el servidor abajo. También puedes ver este hilo interesante sobre el mundo webmaster acerca de Thea 228 lista de usuarios de la prohibición de los agentes.
## .htaccess Code :: BEGIN
## Block Bad Bots by user-Agent
SetEnvIfNoCase user-Agent ^FrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Java.* [NC,OR]
SetEnvIfNoCase user-Agent ^Microsoft.URL [NC,OR]
SetEnvIfNoCase user-Agent ^MSFrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Offline.Explorer [NC,OR]
SetEnvIfNoCase user-Agent ^[Ww]eb[Bb]andit [NC,OR]
SetEnvIfNoCase user-Agent ^Zeus [NC]

Order Allow,Deny
Allow from all
Deny from env=bad_bot

## .htaccess Code :: END 
8. Redirigir todas  IP hacia otros sitios.
Si deseamos redirigir todos los visitantes a una IP diferente. Y tambien dar acceso a otras ip a nuestro sitio web, el siguiente codigo les permitira realizar dichas acciones.
ErrorDocument 403 http://www.youdomain.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123
9. No mostrar solicitud de descarga con Htaccess
Por lo general, cuando intenta descargar un archivo desde un servidor Web, quien recibe la solicitud tambien recibe un mensaje de  pregunta si desea guardar el archivo o abrirlo. Si deseamos que dicha confirmacion no aparezca en los usuarios clientes podemos utilizar el siguiente código en el archivo. htaccess.
AddType application/octet-stream .pdf
AddType application/octet-stream .zip
AddType application/octet-stream .mov
10. Cambiar el tipo de archivo con htaccess
Hacer que  cualquier archivo de un cierto tipo de archivo como por ejemplo image.jpg, index.html, default.cgi por medio de esta propiedad htaccess podemos hacerlos pasar como si tubieran extencion php.
ForceType application/x-httpd-php
SetHandler application/x-httpd-php
11. Bloquear el acceso a nuestro archivo .htaccess
Mediante la adición de que el siguiente código a nuestro archivo htaccess evitaremos intentos de acceso a este archivo. Esta capa adicional de seguridad protege su htaccess mostrando un mensaje de error 403 en el navegador.
# seguridad para nuestro archivo htaccess
 order allow,deny
 deny from all
12. Proteger el acceso a ciertos archivos específicos en el servidor
Esto se puede hacer añadiendo el código de abajo mencionados. Por ejemplo, si deseamos  bloquear algun archivo con el nombre  default.jpg Esto evitará que la visualización de este archivo.
# prevenir acceso a ciertos archivos
 order allow,deny
 deny from all
13. Impedir el acceso a la navegación no autorizada
Este es un truco muy util con nustro archivo .htaccess nos ayuda a impedir que los agentes o usuarios puedan ver todos los documentos en un determinado directorio.
# deshabilitar navegacion por directorios
Options All -Indexes
14. Configuración de la página por defecto
Podemos configurar la página predeterminada de un directorio. Por ejemplo, en el código de la página por defecto se establece como lugar de about.html en lugar de index.html
# alternativa para pagina principal
DirectoryIndex about.html
15. Proteger con contraseña los directorios y archivos.
Podemos crear una autenticación para el acceso a determinados archivos y directorios. El código tiene ejemplos de la protección de contraseña de un solo archivo y protección de contraseña para un carpeta entero.
# proteger un archivo 

AuthType Basic
AuthName “Prompt”
AuthUserFile /home/path/.htpasswd
Require valid-user


# proteger con contraseña un directorio
resides
AuthType basic
AuthName “This directory is protected”
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user



1 comentario: