Calificación:
  • 3 voto(s) - 3.33 Media
  • 1
  • 2
  • 3
  • 4
  • 5
21 hacks de htaccess que todo desarrollador deberí­a conocer
#1
[center](Asegúrate de hacer un backup de tu archivo .htaccess  actual antes de aplicar cualquiera de estos hacks.)  

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:
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]


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:
#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


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:
ErrorDocument 403 http://www.nombrededominio.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123


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:
Redirect 301 /d/file.html http://www.nombrededominio.com/r/file.html

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:
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php


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:
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:


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:
ServerSignature EMail
SetEnv SERVER_ADMIN [email protected]

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:
AddType application/octet-stream .pdf
AddType application/octet-stream .zip
AddType application/octet-stream .mov


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:
#Protect the .htaccess File
order allow,deny
deny from all


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:
SetOutputFilter DEFLATE

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:
Header set Expires "Wed, 21 May 2010 20:00:00 GMT"


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:
#Serve Alternate Default Index Page
DirectoryIndex about.html


Proteje tus archivos y directorios con una contraseña

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


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:
# Redirigir de un dominio viejo a uno nuevo
RewriteEngine On
RewriteRule ^(.*)$ http://www.nuevodominio.com/$1 [R=301,L]

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:
FileETag MTime Size
ExpiresActive on
ExpiresDefault "access plus 86400 seconds"

Comprimir componentes al activar Gzip

Esto hace que sea más rápida la carga de tu sitio:

Código:
AddOutputFilterByType DEFLATE text/html text/plain 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



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:
RewriteRule ^category/(.+)$ http://www.tudominio.com/$1 [R=301,L]

Deshabilitar la navegación por los directorios de tu sitio

Código:
Options All -Indexes

Redirigir los Feeds de WordPress a FeedBurner

Código:
#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]

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:
RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L]

Quitar el "www" del dominio

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

Espero que les sirva tanto como a mi  :hi:
Saludos[/center]
#2
Vaya, una lista impresionante recopilando los códigos más importantes para el .htaccess de tu web. Sin duda este es un gran post y si no te importa, lo voy a colocar como destacado, para que la gente pueda verlo fácilmente.

Gracias Guiño
[Imagen: firmatwitter.png][Imagen: firmataq.png]
WWW
#3
Muy buenos tipos, clanlatino. Muchas gracias por aportarlos Guiño
WWW
#4
Gracias. Pero el de
Cita: ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
no se donde ponerlo. Uso MyBB
Cualquier duda, pregunta, comentario... Aquí estoy Guiño
#5
Algunos ya me lo sabia otro no usare un par gracias por la información
WWW
#6
Gracias por tu aporte, ya sera un poco mas dificil hackear mi web
#7
Guiño 
(20-07-2011, 04:15 AM)Kevin9908 escribió: Gracias. Pero el de
Cita: ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
no se donde ponerlo. Uso MyBB

Pues simplemente añade esas lineas al final de tu .htaccess pero antes cre los archivos a los que estás llamando , en concreto los archivos 401.php 403.php 404.php y 500.php e incluyelos en una carpeta que hayas creado en public_html con el nombre de error Guiño
WWW
#8
esto ayuda en mucho y tambien ayuda a muchos como yo, gracias Skylium!!!
#9
Muchas gracias por el contenido! Voy a ver que tal ya que había muchas cosillas que no conocía ^^
matt.Ángel
#10
igual me sirvieron gracias ay muchas cosas de las qe desconosco


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Configurar Mostrar indice de archivos en una carpeta por .htaccess Kevin9908 0 121 01-07-2015, 02:23 AM
Último mensaje: Kevin9908
  Proteger el admin desde .htaccess aerotuning 11 465 29-04-2015, 04:45 PM
Último mensaje: bseca
  Enviar emails con PHP no funciona del todo bseca 10 643 30-12-2014, 09:50 PM
Último mensaje: bseca
  Duda htaccess bseca 9 615 01-01-2014, 04:24 PM
Último mensaje: Gonzalo
  Conocer si es palíndromo en C++ rippifas 0 248 02-06-2013, 02:28 AM
Último mensaje: rippifas
  ¡Crea tu propio .htaccess fácilmente y en español! Arrakis 42 5.897 23-05-2013, 05:14 AM
Último mensaje: MrLoco
  [PHP] Banear IP desde el .htaccess torgar22 1 424 06-05-2013, 07:18 PM
Último mensaje: MrLoco
  Tuto - Bloqueo de Ips por Pais Mediante htaccess MrLoco 15 1.185 27-03-2013, 03:13 PM
Último mensaje: Teban
  Redireccion de tuweb.com a www.tuweb.com con htaccess! torgar22 4 476 08-03-2013, 10:58 PM
Último mensaje: lasr
  (HTACCESS) Hacer que tu sitio detecte los dispositivos móviles y redireccionar ariel 54 18.428 07-02-2013, 07:53 PM
Último mensaje: ariel



Usuarios navegando en este tema: 1 invitado(s)