wordpress

.htaccess por defecto en WordPress

A veces necesitamos restaurar el .htaccess por defecto para hacer funcionar un wordpress con problemas. Este es el archivo por defecto.
[post-views]

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 más 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 xxx.xxx.xxx.xx
# IP cuando estoy en el trabajo
allow from xxx.xxx.xxx.xxx
# IP de otro usuario con permisos
allow from xxx.xxx.xxx.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} !^https://ilvwp.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^https://159.65.95.11$ [NC]
RewriteCond %{HTTP_REFERER} !^https://ilvwp.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^https://159.65.95.11$ [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

Facebook
Twitter
LinkedIn
Pinterest
WhatsApp
Telegram
Reddit
Publicado por:
We use cookies in order to give you the best possible experience on our website. By continuing to use this site, you agree to our use of cookies.
Accept