Este archivo es Muy Importante en tu Sitio de el dependen muchas cosas y cuando lo Tienes bien configurado pues te facilita el Trabajo, por eso te e traido las mejores configuraciones para que puedes escoger a tu gusto cuales son las que se ajustan a tu sitio Web.
En esta Ocacion Usaremos Wordprees como Ejemplo
Comenzamos:Este archivo .htaccess por defecto debe incluir cualquier instalación de WordPress es:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Debemos decir que cualquier cambio que se realice en este archivo debería ir "" de # END WordPress y nunca antes.
Esto garantiza que no se rompe ninguna de las funciones de WordPress basadas en .htaccess. Antes de realizar cambios al archivo .htaccess se recomienda siempre realizar una copia de seguridad.
Entiendiendo este Punto les dejamos muchos cambios que pueden añadir conforme
a sus deseos.
# Bloquear IPs de usuarios o bots indeseados
Apache puede ser utilizado para bloquear usuarios o bots indeseados a nuestra página web o blog. Este código permite visitar la página web o blog a cualquier persona, excepto a quien tenga las siguientes direcciones IP (cambiar las IPs con las IPs que quieras bloquear):
<Limit GET POST PUT> order allow,deny allow from all deny from 123.456.789 deny from 93.121.788 deny from 223.956.789 deny from 128.456.780 </LIMIT>
# Redireccionar el día y el nombre de los enlaces permanentes a /% postname%/
Lo primero que debes de hacer es acceder a tu panel de administración de WordPress, ir a Ajustes → Enlaces permanentes (permalinks) y seleccionar "personalizar". Rellena el campo con /% postname%/:
Ahora tenemos que redirigir todos los backlinks (enlaces entrantes) usando la antigua estructura de enlaces permanentes (permalinks) a la nueva estructura de enlaces permanentes. Para ello, tendrás que editar el archivo .htaccess. e insertar las siguiente líneas de código:
RedirectMatch 301 /([0-9]+)/([0-9]+)/([0-9]+)/(.*)$ http://http://www.tu_dominio.com//$4
Si quieres configurar unos enlaces permanentes más óptimos, te aconsejo cambiar /% postname%/ por /% category%/% postname%/.
# Redireccionar las visitas a una página de mantenimiento
RewriteEngine on RewriteCond %{REQUEST_URI} !/maintenance.html$ RewriteCond %{REMOTE_ADDR} !^123.123.123.123 RewriteRule $ /maintenance.html [R=302,L]
# Redireccionar hacia www o sin www con .htaccess
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^yourblogname.com [NC] RewriteRule ^(.*)$ http://www.yourblogname.com/$1 [L,R=301]
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^www.tu_dominio.com [NC] RewriteRule ^(.*)$ http://tu_dominio.com/$1 [L,R=301]
# Configurar URLs canonical con .htaccess
# Set the canonical url RewriteEngine On RewriteCond %{HTTP_HOST} ^tu_dominio\.com$ [NC] RewriteRule ^(.*)$ http://www.tu_dominio.com/$1 [R=301,L]
# Redireccionar tu feed hacia FeedBurner
Con estos pasos redirecciona http://www.tupaginaweboblog.com/feed a .
# temp redirect wordpress content feeds to feedburner <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC] RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC] RewriteRule ^feed/?([_0-9a-z-]+)?/?$ [R=302,NC,L] </IfModule>
# Redireccionar tu feed de comentarios hacia FeedBurner
# temp redirect wordpress comment feeds to feedburner <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC] RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC] RewriteRule ^comments/feed/?([_0-9a-z-]+)?/?$ [R=302,NC,L] </IfModule>
# Redirecciones 301 para SEO con .htaccess
Tambien el siguiente código para redirigir a una página específica sin mostrar la antigua página de error.
<a class="_hootified" a="" href="#" #seo"="" onclick="javascript:var e = document.createEvent("CustomEvent"); e.initCustomEvent("hootletEvent", true, true, {type: "hash", value: "#SEO"}); document.body.dispatchEvent(e); return false;">#SEO</a> Friendly 301 Redirects Redirect 301 /abc/file.html http://www.tu_dominio.com/def/file.html
# Forzar la cache desde .htaccess
Este código para el .htaccess no ayudará en la carga inicial de la página web o blog, pero si lo hará significativamente en posteriores cargas enviando estados 304 cuando los elementos solicitados no se hayan modificado.
FileETag MTime Size ExpiresActive on ExpiresDefault "access plus x seconds"
# Permitir únicamente tu IP para acceder al panel de administración de WordPress
Reemplaza la IP de la línea de código "with allow from xx.xx.xx.xx" con la tuya para que sólo tu IP pueda acceder al panel de administración wp-admin de wordpress.
AuthUserFile /dev/null AuthGroupFile /dev/null AuthName "Wordpress Admin Access Control" AuthType Basic <LIMIT GET> order deny,allow deny from all allow from xx.xx.xx.xx </LIMIT>
# Bloquear comentarios a peticiones no referenciadas (Spam)
Simple truco para evitar que los spammers publiquen o ataquen tu página web o blog.
RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post.php* RewriteCond %{HTTP_REFERER} !.*tu_dominio.com.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
# Bloquear una IP spam
Para bloquear ciertas direcciones IP para evitar que accedan a tu página web o blog, añade las siguientes líneas de código en tu archivo .htaccess y sustituye la dirección IP del ejemplo con la que quieras bloquear.
## USER IP BANNING <Limit GET POST> order allow,deny deny from 200.49.176.139 allow from all </Limit>
# Denegar acceso al fichero de configuración wp-config de WordPress
El archivo wp-config.php de WordPress incluye toda la información importante, como el nombre de base de datos. Es vital tenerlo bien protegido.
# protect wpconfig.php <files wp-config.php> order allow,deny deny from all </files>
# Limitar el peso de los archivos subidos a 20mb
Para limitar el tamaño de los archivo que subes en wordpress hasta 20MB, utiliza el siguiente código:
# limit file uploads to 10mb LimitRequestBody 10240000
# Personalizar la página de error 404 con .htaccess
# custom error pages ErrorDocument 401 /err/401.php ErrorDocument 403 /err/403.php ErrorDocument 404 /err/404.php ErrorDocument 500 /err/500.php
# Añadir barra (/) al final de las URLs
Para añadir una barra al final de tus enlaces (URLs), inserta el siguiente código en tu archivo .htaccess:
<a class="_hootified" a="" href="#" #trailing"="" onclick="javascript:var e = document.createEvent("CustomEvent"); e.initCustomEvent("hootletEvent", true, true, {type: "hash", value: "#trailing"}); document.body.dispatchEvent(e); return false;">#trailing</a> slash enforcement RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !# RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*)$ http://tu_dominio.com/$1/ [L,R=301]
# Proteger directorios con contraseñas
Una forma sencilla de proteger mediante contraseña los directorios de tus blogs.
AuthType Basic AuthName "restricted area" AuthUserFile /usr/local/var/www/html/.htpasses require valid-user
# Resolver errores en los enlaces (URLs) con .htaccess
Este truco puede ser útil para auto-corregir errores ortográficos de tus enlaces (URLs).
<IfModule mod_speling.c> CheckSpelling On </IfModule>
# Asegurar los plugins de WordPress
Los plugins de wordpress suelen tener "puertas traseras" y suelen ser sitios por los que los hackers pueden entrar en tu página web o blog. Para evitar que otras personas tengan acceso directo a los archivos de tus plugins usa el siguiente código:
<Files ~ "\.(js|css)$"> order allow,deny allow from all </Files>
# Desactiva el Trade de http y Track
RewriteEngine on RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK) RewriteRule .* - [F]
# Evita el hotlinking
RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www.)?tu_dominio.com/.*$ [NC] RewriteRule .(gif|jpg)$ http://www.tu_dominio.com/hotlink.gif [R,L]Y por ultimo protege el archivo htaccess el mas importante pues de nada valetantos cambios sin protegerlo a el.<Files .htaccess> order allow,deny deny from all </Files>Es todo espero toda esta informacion les puedan sacar provecho y si conocen algunoles agradezco si lo mencionan y agregan los comentarios estan disponibles.