El fichero .htaccess es algo muy potente que nos permite (si sabemos) hacer prácticamente pre-procesar cualquier cosa en nuestro servidor web sin tener que programarse nada en ningún lenguaje. El mayor problema es que quien ideo «ese lenguaje» debería tener gripe y resulta algo complejo.
Uno de los problemas que hemos resuelto gracias al .htaccess es el acceso a uno de los blogs desde fuera de un entorno controlado, es decir, unas IPs determinadas. El problema es que dicho blog, al estar en un wordpress multisitio y no tener configuración propia, sino compartida, nos obliga a tener que revisar ciertas condiciones.
Es decir, en cristiano. Si tenemos un ServerAlias en nuestro httpd.conf (o amigos) que apuntan todos a una misma URL pero queremos que a uno de los alias no se pueda entrar salvo desde ciertas IPs nos toca jugar un poco con el .htaccess y que con el Deny o el Allow no se puede hacer.
Por eso hay que redirigir a los clientes que cumplan ciertas condiciones, tales como:
RewriteCond %{HTTP_HOST} ^URL QUE QUEREMOS QUE NO ENTREN(.*)$
RewriteCond %{REMOTE_HOST} !HOSTS PERMITIDOS
RewriteRule ^(.*)$ http://redireccion [L]
De esta forma, aquellos que intenten acceder al host indicado y que no pertenezcan a la URL permitida serán redirigidos a otro sitio.
Es muy recomendable leerse los siguiente enlaces donde hay más información acerca del .htaccess y que son la biblia: perishablepress.com, directorio.efxto.com, apache.org (obviamente)
Recordad que todo lo que se pueda hacer en los ficheros de configuración es mucho mejor que el hacerlo vía .htaccess.