.htaccess por defecto para WordPress

989

El archivo .htaccess aunque no pertenece a la instalación de WordPress, es necesario, para que funcionen muchas cosas y que nos puede ayudar a segurar nuestra instalación de WP.

El archivo .htaccess lo puedes encontrar en la carpeta raíz de tu sitio web, exactamente donde se encuentra wp-config.php

El archivo .htaccess por defecto de WordPress

con los enlaces permanentes configurados para mostrar URL amigables:

# 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

A partir de aquí podemos añadir mejoras y varias personalizaciones que harán mas seguro nuestro wordpress.

.htaccess básico para proteger WordPress

Una de mis personalizaciones favoritas para casi cualquier instalación, sin usar plugins de seguridad es esta:

# Asegurando WordPress 
# Desactivar la firma de servidor 
# (Si en los mensajes de error aparece la versión de Apache y el email del admin, coloca esto) 
ServerSignature Off 

# Desactivar el listado de carpetas y archivos 
Options All -Indexes 

# Protegiendo el mismo fichero htaccess (puede fallar en algunos servidores)
order allow,deny 
deny from all 

# Protegiendo htaccess de manera extrema (puede fallar en algunos servidores)
order allow,deny 
deny from all 
satisfy all 

# Protegiendo wp-admin por IP 
AuthUserFile /dev/null 
AuthGroupFile /dev/null 
AuthName "Access Control" 
AuthType Basic 
order deny,allow 
deny from all 

# IP cuando estoy en casa 
allow from xx.xxx.xxx.xx 

# IP cuando estoy en el trabajo 
allow from xx.xxx.xxx.xxx 
allow from xxx.xxx.xxx.200 

# IP de otro usuario con permisos 
allow from xxx.xxx.x.xx  

# Protegiéndonos de los comentarios spam 
RewriteEngine On 
RewriteCond %{REQUEST_METHOD} POST 
RewriteCond %{REQUEST_URI} .wp-comments-post.php* 
RewriteCond %{HTTP_REFERER} !.*ilvwp.com* [OR] 
RewriteCond %{HTTP_USER_AGENT} ^$ 
RewriteRule (.*) ^https://%{REMOTE_ADDR}/$ [R=301,L] 

# Desactivando el hotlinking con un mensaje de aviso 
RewriteEngine On 
RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !^http://ilvwp.com/.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http://ilvwp.com$ [NC] 
RewriteCond %{HTTP_REFERER} !^http://ilvwp.com/.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http://ilvwp.com$ [NC] 
RewriteCond %{HTTP_REFERER} !google.    [NC] 
RewriteCond %{HTTP_REFERER} !msn. [NC] 
RewriteCond %{HTTP_REFERER} !live. [NC] 
RewriteCond %{HTTP_REFERER} !yahoo. [NC] 
RewriteCond %{HTTP_REFERER} !gravatar.

Otras forma de proteger WordPress con .htaccess

También podemos añadir personalizaciones para cosas muy específicas o cuando nuestro proyecto tenga necesidades muy concretas.

Evita el acceso a un archivo específico con .htaccess

Supongamos que tienes un respaldo de tu base de datos almacenada en el servidor pero no quieres que por nada del mundo alguien pueda tener acceso a ella desde la web.

# Evitar la visualizlación de un archivo específico
<files Respaldo_DB.zip>
order allow,deny
deny from all
</files>

Solicitar contraseña para acceder a un archivo con .htaccess

Si por el contrario deseas que el archivo este disponible pero solo se pueda acceder mediante el ingreso de una contraseña, puedes hacer lo siguiente:

# proteger con contraseña un archivo
<Files Respaldo_DB.zip>
AuthType Basic
AuthName "Aviso"
AuthUserFile /home/ruta/.htpasswd
Require valid-user
</Files>

Hay un paso previo y es la creación del fichero .htpasswd y o puedes crear con este htpasswd Generator.

Si te gusta la personalización avanzada puede que quieras echar un ojo a: wp-config.php Configuración de WordPress Avanzada

También podría gustarte

Deja una respuesta

Do NOT follow this link or you will be banned from the site!