-
.htaccess codigos y ejemplos
Hace poco puse algunos términos más comunes que se usan en el mundo de internet cómo el CRT o el CRC, Y creo que fué de interes general.. Asi que hoy voy a poner tratar de poner algunos terminos sobre las redirecciones .htaccess cuando usarlas y para que sirven.
Los archivos .htaccess son contenedores de reglas que el servidor web Apache reconocerá a la hora de cargar tu sitio. Estos archivos son muy útiles antes y durante la construcción de una web, por ello presento 20 ejemplos de cómo podemos sacar provecho de las funcionalidades que brinda.
Preparación
Antes que nada debemos asegurarnos de que los archivos .htaccess realmente esten habilitados en nuestro servidor Apache. Para ello es necesario y suficiente que en /etc/apache2/site-available/default se incluya la opción:
AllowOverride All
en la definición de los directorios que deseemos utilizar.
Los 20 ejemplos
1) Personalizar el Error 404
Se puede personalizar el clásico error 404 de página no encontrada añadiendo esta línea a tu archivo .htaccess:
ErrorDocument 404: «Esta página no esta disponible»
o bien redirigir a un archivo (por ejemplo html):
ErrorDocument 404 /error404.html
De esta misma manera se puede hacer con los demas errores como el 403 de acceso denegado.
2) Protección a un directorio
Se puede proteger directorios con usuario y contraseña, esto es útil para controlar quienes pueden navegar los archivos o no. Primero se debe crear un archivo .htpasswd que es donde se guardará los datos del usuario. Este archivo puede estar en el directorio raíz pero NO en el que queremos proteger.
Creamos el archivo .htpasswd
$ touch /var/www/misitio/.htpasswd
y luego para dar de alta a un usuario podemos escoger dos caminos, uno es utilizando una herramienta online que encriptará la contraseña que ingresemos, luego tan solo debemos copiar y pegar lo que nos devuelva en el archivo .htpasswd. El otro camino es utilizando el comando htpasswd de la siguiente forma:
$ htpasswd /var/www/misitio/.htpasswd admin
a continuación nos pedirá que ingresemos una contraseña y listo esta cuenta queda guardada en el archivo. Ahora solo falta crear el .htaccess para el directorio que queremos proteger, para ello nos dirigimos a ese directorio y dentro de el creamos un archivo .htaccess y escribimos lo siguiente:
AuthName «Este directorio es privado»
AuthUserFile /var/www/misitio/.htpasswd
AuthType basic
Require valid-user3) Evitar navegar los directorios
Es muy sencillo evitar que se navegue el contenido de los directorios del nuestro sitio, para ello basta con agregar la siguiente línea al .htaccess que esta en la raíz:
Options All -Indexes
4) Bloqueo de IPs
En caso de un ataque o por razones de seguridad puede ser necesario bannear una ip:
Order allow, deny
Deny from xxx.xxx.xxx.xxx
Allow from allCambia xxx.xxx.xxx.xxx por la ip que desees bannear o en vez de una dirección ip puede ser un dominio:
Order allow, deny
Deny from dominio.banneado.com
Allow from all5) Límite de visitas
Esta opción limita el número de visitantes a tu sitio a 300 en el mismo momento:
MaxClients 300
6) Cambiar la página principal
Con esta opción le indicas al servidor que tu página de inicio no es la típica index sino la que tu desees:
DirectoryIndex otroindex.html
7) Redireccionamiento
Existen muchas formas de redireccionar a tus visitantes a otro lugar. Estos son algunos de ellos:
Redirect / /otro_dir/
Redirect /index.php /nuevo.php
Redirect /files/doc.zip http://nuevo.com/files/doc.zip8) Anti hot linking
El hot link es la acción de enlazar en un sitio ajeno un archivo que esta alojado en nuestro servidor. Esto implica consumo de ancho de banda y es algo indeseable por ello se puede aplicar la siguiente regla:
RewriteEngine On
RewriteCond % !^$
RewriteCond % !^http://(www\.)?dominio.com/.*$ [NC]
RewriteRule ^.*\.(bmp|tif|gif|jpg|jpeg|jpe|png)$b – [F]9) Obligar a descargar archivos
Esta opción obliga a que los archivos no sean abiertos en el navegador sino descargados por el cliente:
AddType application/octet-stream .avi
AddType application/octet-stream .mpg
AddType application/octet-stream .txt
AddType application/octet-stream .pdf .odt .docPara uno en particular sería:
<Files archivo_particular.txt>
AddType application/octet-stream txt
</Files>10) Configuración del host
Puedes escribir tu configuración personalizada:
#Indica el orden de precedencia de ejecución de los index
DirectoryIndex index.html index.php index.htm
#El lenguaje por defecto
DefaultLanguage es-ES
#La codificación por defecto
AddDefaultCharset UTF-8
#Activar (on), desactivar (off) o mostrar email (email) para la firma del sevidor en los mensajes
ServerSignature Off
#Establecer el email del administrador
SetEnv SERVER_ADMIN webmaster@dominio.com11) Protección de archivos
Deniega el acceso a los archivos que especifiques:
#protege los .htaccess, .htpasswd, .ini, .log
<FilesMatch «\.(htaccess|htpasswd|ini|log)$»>
Order Allow,Deny
Deny from all
</FilesMatch>#Protege un archivo en particular y pide contraseña
<Files config.php>
Order deny,allow
Deny from all
AuthName «Acceso restringido»
AuthType Basic
AuthUserFile /.htpasswd
Require valid-user
</Files>12) Permitir el acceso sólo a algunas IPs o dominios
Similar al ejemplo anterior protegemos un directorio o el directorio raíz y solo permitimos el acceso a quien deseemos:
Order deny,allow
Deny from all
Allow from 192.168.0.1 192.168.0.2
Allow from www.exclusivo.com13) Redireccionar todo el tráfico menos una ip o dominio
Este tipo de redireccionamiento es muy útil cuando el sitio esta bajo construcción:
ErrorDocument 403 http://www.nuevositio.com
Order deny,allow
Deny from all
Allow from 200.10.45.120
Allow from desarrolladores.com14) Limitar los tipos de archivos a subir (upload)
Se puede controlar que tipos de archivos permitimos subir desde un cliente a nuestro sitio de la siguiente forma:
AddType image/jpeg .jpg
AddType text/plain .txt .xml .html .css15) Evitar mostrar ciertos tipos de archivos
Este ejemplo ignorará la existencia de archivos de la extensión indicada:
IndexIgnore *mp3 *.avi *.mpeg
16) Determinar el tiempo en caché de los archivos
Con el fin de optimizar y agilizar tu sitio puedes determinar el tiempo en caché según el tipo de archivo que sea de acceso público (el tiempo esta expreasado en segundos):
# 1 mes
<FilesMatch «\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$»>
Header set Cache-Control «max-age=6480000, public»
</FilesMatch># 1 semana
<FilesMatch «\.(jpg|jpeg|png|gif|swf)$»>
Header set Cache-Control «max-age=604800, public»
</FilesMatch># 1 hora
<FilesMatch «\.(txt|xml|js|css)$»>
Header set Cache-Control «max-age=3600»
</FilesMatch># No usar caché
<FilesMatch «\.(html|htm|php|cgi|pl)$»>
Header set Cache-Control «max-age=0, private, no-store, no-cache, must-revalidate»
</FilesMatch>17) Redirecciona los logs
Con esta regla podrás ver los logs del servidor en un archivo de texto:
ErrorLog /files/error.log
18) Obligar a escribir www
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond % !^www\.dominio\.com$ [NC]
RewriteRule ^(.*)$ http://www.dominio.com/$1 [R=301,L]19) Desahabilitar la ejecución de scripts indeseados
Options -ExecCGI
AddHandler cgi-script .php .pl .py .jsp .asp .sh .cgi20) Dengar métodos de comunicación
RewriteCond % !^(GET|HEAD|OPTIONS|POST|PUT)
RewriteRule .* – [F]Comparte esto:
3 diciembre 2009 / eix / Comentarios desactivados en .htaccess codigos y ejemplos
Categories: General
Etiquetas: acordar, castellano, crisi, español, juegodiarios, mini, MiniUrl, ocultar, ocultar direccion, paisajes, sexo amateur, tinyurl, url, urls, vender webs, vendido
Calendario
L | M | X | J | V | S | D |
---|---|---|---|---|---|---|
« Nov | ||||||
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Codigo QR
Categorías
Ultimas noticias
- Nuevo Disco Duro Dual, WD Black2
- Otro año mas Apple se apunta al Black Friday
- Herramientas que incrementan tu productividad en Mac OS X
- Nuevo Smartphone por parte de Samsung con pantalla de tres lados
- Feliz Navidad Desde Oinki.es
- PSY consigue el record de video mas visto en Youtube
- Llega el Black Friday a la Apple Store
- Empleo para Programadores
- Mozilla Firefox 17 ya disponible
- Hotmail deja de ser el correo mas usado
Comments are currently closed.