21 hacks de htaccess que todo desarrollador debería conocer  Tema solucionado

Recursos como scripts PHP, HTML, CSS, JS, etc. que queráis compartir con los demás usuarios.

Moderadores: Soporte phpBB, Soporte MODs

Reglas del Foro
Antes de participar en los foros, leer esto por favor.
Normas generales de phpBB-Es y las de Soporte
Atom Feed
Favoritos: micasamitelefono, ahh72
Seguidores: karbiko

21 hacks de htaccess que todo desarrollador debería conocer  Tema solucionado

Notapor enavap » Jueves, 12 Enero 2012, 15:23

La configuración del archivo .htaccess de Apache (hypertext access) puede ser una herramienta muy ponderosa en el desarrollo web si se utiliza de la forma adecuada.
Mediante .htaccess podremos realizar redirecciones, proteger archivos y directorios con contraseña, prevenir el hotlinking y el robo de ancho de banda, comprimir archivos y mucho, mucho más. Entérate cómo.
Asegúrate de hacer un backup de tu archivo .htaccess actual antes de aplicar cualquiera de estos hacks.

1. Prevenir el Hotlinking
¿Estás cansado de que la gente utilice tu ancho de banda poniendo las imágenes albergadas en tu servidor en su sitio web? Añade el siguiente código al final de tu archivo .htaccess para prevenir el hotlinking:
Código: Seleccionar todo
Options +FollowSymlinks 
#Protect against hotlinking 
RewriteEngine On 
RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !^http://(www.)?nombrededominio.com/ [nc] 
RewriteRule .*.(gif|jpg|png)$ http://nombrededominio.com/img/no_robar_ancho_de_banda.gif[nc]

2. Bloquea todas las peticiones del user-agent
Es posible bloquear a todos los user-agents indeseados que pueden ser potencialmente dañinos o quizá simplemente para mantener la carga del servidor lo más baja posible.
Código: Seleccionar todo
#Block bad bots 
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 

3. Redirecciona a todos, excepto a ciertas IPs
Si por alguna razón deseas denegar el acceso a todos los usuarios o sólo permitir a un cierto grupo de direcciones IP para que tengan acceso a tu sitio, añade el siguiente código a tu archivo .htaccess:
Código: Seleccionar todo
ErrorDocument 403 http://www.nombrededominio.com 
Order deny,allow 
Deny from all 
Allow from 124.34.48.165 
Allow from 102.54.68.123 

4. Redirecciones 301 amigables con SEO
Si has transferido nombres de dominio o deseas redireccionar a una página específica sin que afecte a los resultados de los motores de búsqueda como Google, utiliza el siguiente código:
Código: Seleccionar todo
Redirect 301 /d/file.html http://www.nombrededominio.com/r/file.html  

5. Crea una página personalizada para cada tipo de error
Si te cansaste del diseño por defecto de las páginas de error 401, 403, 404, 500, etc. puedes fácilmente crear la tuya propia y referirte hacía ella de esta forma:
Código: Seleccionar todo
ErrorDocument 401 /error/401.php 
ErrorDocument 403 /error/403.php 
ErrorDocument 404 /error/404.php 
ErrorDocument 500 /error/500.php 

6. Crea una lista de IPs prohibidas
¿Te cansaste de obtener siempre los mismos comentarios de ciertos usuarios una y otra vez? Simplemente prohíbe el acceso a determinadas IPs, añadiendo el siguiente código:
Código: Seleccionar todo
allow from all 
deny from 145.186.14.122 
deny from 124.15 

7. Setea una dirección de e-mail por defecto para el administrador de servidor
Con el siguiente código puedes especificar la dirección de correo electrónico por defecto para el administrador de servidor:
Código: Seleccionar todo
ServerSignature EMail 
SetEnv SERVER_ADMIN default@dominio.com 

8. Deshabilita la ventana de aviso de descarga
Usualmente al descargar algo de un sitio web, saltará una ventana que pregunta si deseas abrir el archivo o guardarlo en tu PC. Para prevenir esto, utiliza el siguiente código:
Código: Seleccionar todo
AddType application/octet-stream .pdf 
AddType application/octet-stream .zip 
AddType application/octet-stream .mov 

9. Protege un archivo específico
El código que sigue te permite denegar el acceso a cualquier archivo que desees, mostrando una página de error 403 cuando alguien intenta acceder al mismo:
Código: Seleccionar todo
#Protect the .htaccess File 
  
order allow,deny 
deny from all 

10. Comprime componentes con mod_deflate
Como alternativa a la compresión de archivos mediante Gzip, puedes implementar mod_deflate (que se supone es más rápido). Coloca el siguiente código en la parte superior de tu archivo .htaccess:
Código: Seleccionar todo
SetOutputFilter DEFLATE

11. Agrega headers de expiración a los archivos
El siguiente código muestra cómo agregar fechas de expiración en las cabeceras de los archivos:
Código: Seleccionar todo
Header set Expires "Wed, 21 May 2010 20:00:00 GMT"  

12. Seteando la página por defecto
Puedes hacer que la página a mostrar ni bien un usuario llegue a tu sitio no sea la archiconocida "index". Aquí seteamos "about.html" como página de inicio:
Código: Seleccionar todo
#Serve Alternate Default Index Page 
DirectoryIndex about.html 

13. Proteje tus archivos y directorios con una contraseña
Código: Seleccionar todo
#proteger un archivo con contraseña 
  
AuthType Basic 
AuthName "Prompt" 
AuthUserFile /home/path/.htpasswd 
Require valid-user 
Código: Seleccionar todo
# proteger un directorio con contraseña 
resides 
AuthType basic 
AuthName "This directory is protected" 
AuthUserFile /home/path/.htpasswd 
AuthGroupFile /dev/null 
Require valid-user 

14. Hacer una redirección 301 de un dominio viejo a uno nuevo
Incluyendo este snippet en el .htaccess de tu viejo dominio, conseguirás redigir a otro nuevo (sin ser penalizado por Google por duplicar contenido, dado que el 301 es un aviso de "redirección permanente" ):
Código: Seleccionar todo
# Redirigir de un dominio viejo a uno nuevo 
RewriteEngine On 
RewriteRule ^(.*)$ http://www.nuevodominio.com/$1 [R=301,L] 

15. Forzar el cacheo
El siguiente snippet no va a incrementar directamente la velocidad de carga de tu sitio en general, pero sí va a cargar más rápido cuando el mismo usuario vuelva a visitarlo al enviar un status 304 cuando se pidan elementos que no han sido modificados. Puedes cambiar la frecuencia de cacheo al cambiar el número de segundos (en este ejemplo se da una vez al día):
Código: Seleccionar todo
FileETag MTime Size 
ExpiresActive on 
ExpiresDefault "access plus 86400 seconds" 

16. Comprimir componentes al activar Gzip
Esto hace que sea más rápida la carga de tu sitio:
Código: Seleccionar todo
AddOutputFilterByType DEFLATE text/html text//xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript 
BrowserMatch ^Mozilla/4 gzip-only-text/html 
BrowserMatch ^Mozilla/4.0[678] no-gzip 
  
BrowserMatch bMSIE !no-gzip !gzip-only-text/html 

17. Quitar palabras o strings de una URL
En este ejemplo, quitaremos "category" de nuestras URL, es decir: http://tudominio.com/category/blue -> http://tudominio.com/blue
Agrega este código al final de tu .htaccess:
Código: Seleccionar todo
RewriteRule ^category/(.+)$ http://www.tudominio.com/$1 [R=301,L]  

18. Deshabilitar la navegación por los directorios de tu sitio
Código: Seleccionar todo
Options All -Indexes  

19. Redirigir los Feeds de WordPress a FeedBurner
Código: Seleccionar todo
#Redirect wordpress content feeds to feedburner 
  
RewriteEngine on 
RewriteCond %{HTTP_USER_AGENT} !FeedBurner    [NC] 
RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC] 
RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/tufeed [R=302,NC,L] 

20. Remover la extensión del archivo de una URL
Para que sea más amigable al usuario y a los buscadores, por ejemplo "http://www.tudominio.com/autos.html" -> "http://www.tudominio.com/autos"
Código: Seleccionar todo
RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L]  

21. Quitar el "www" del dominio
Código: Seleccionar todo
#remove www from URI 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.dominio.com$ [NC] 
RewriteRule ^(.*)$ http://dominio.com/$1 [L,R=301] 


Artículo original: 21 hacks de htaccess que todo desarrollador debería conocer
Avatar de Usuario
enavap
Usuario/a
Usuario/a
 
Mensajes: 68
Edad: 27
Registrado: Jueves, 05 Enero 2012, 18:13
Nombre real: Jan

Publicidad



Colabora con nosotros haciendo una Donación y elimina esta publicidad.

Re: 21 hacks de htaccess que todo desarrollador debería cono

Notapor phpbb.com » Viernes, 27 Enero 2012, 02:51

Interesante artículo :)
phpbb.com
PayPal
PayPal
 
  • Windows XP Opera

Publicidad



Colabora con nosotros haciendo una Donación y elimina esta publicidad.

Re: 21 hacks de htaccess que todo desarrollador debería cono

Notapor Megabyte » Martes, 07 Febrero 2012, 15:30

interesante..... :D
Firma
La Administración del Sitio requiere que esté registrado y se haya identificado para ver este mensaje.
Avatar de Usuario
Megabyte
VIP
VIP
 
Mensajes: 997
Edad: 31
Registrado: Sábado, 25 Diciembre 2010, 02:39
Ubicación: Guate City.
Nombre real: WilsonASD
  • Windows 7 Firefox

Publicidad



Colabora con nosotros haciendo una Donación y elimina esta publicidad.

¿Te fue útil este tema?

Enlace:
BBcode:
HTML:


Compartir

Volver a Recursos Webmaster

  • Temas relacionados
    Respuestas
    Vistas
    Último mensaje

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado