Skip to main content

Si vas a empezar a trabajar con Wordpress, hay algunos archivos con los que te vas a tener que familiarizar. Estos son .htaccess, robots.txt y wp-config.php para empezar. Aunque los dos primeros no son exclusivos de este CMS, ¿para qué valen y que posibilidades tienen?

Archivo .htaccess de Apache

Un fichero .htaccess, también conocido como archivo de configuración distribuida, es un fichero popularizado por el servidor Apache que permite definir diferentes directivas de configuración para cada directorio sin necesidad de editar el archivo de configuración principal del servidor web.

Los .htaccess no son estrictamente necesarios en un sitio web general. Ese archivo simplemente te permite realizar cambios en la forma en que se comporta el site, como por ejemplo redirigir un enlace inactivo a una nueva URL.

En Wordpress es conveniente trabajar con el archivo que suele estar ubicado en el directorio raíz de la instalación y, normalmente, se trata de un archivo oculto. Es fácilmente modificable con cualquier editor de texto y partiendo de una estructura general (default), estas son algunas de las cosas que se pueden hacer:

archivo .htaccess

Estructura general .htaccess (default)

# BEGIN WordPress

RewriteEngine On
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

.htaccess multisite (v. 3.5+)

# BEGIN WordPress Multisite
# Using subfolder network type: https://wordpress.org/support/article/htaccess/#multisite

RewriteEngine On
RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ – [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

# END WordPress Multisite

Forzar SSL con .htaccess

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Forzar SSL con .htaccess en dominio

RewriteEngine On
RewriteCond %{HTTP_HOST} ^mydomain.com [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Forzar SSL con .htaccess en carpeta

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(folder1|folder2|folder3) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Activar compresión GZIP

< IfModule mod_gzip.c >
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
< /ifModule >

Redirigir una página a otra

redirect 301 /pagina_inactiva /nueva_página

Indexar con robots.txt

Para indexar una web el archivo robots.txt nos va a facilitar mucho el trabajo. Las funciones principales de este archivo es ralentizar bots, publicar sitemaps o evitar la indexación de ciertos elementos que no queremos que seas rastreados. Igual que en el caso anterior, el archivo parte de una definición muy básica que puede hacerse lo compleja que queramos.

Las directivas que este archivo soporta son: allow, disallow, sitemap y user-agent.

User-Agent

Es obligatorio al menos un por grupo. La directiva especifica el nombre del rastreador del motor de búsqueda al que se aplica la regla. Esta es la primera línea de todos los grupos de reglas.

Disallow

Corresponde a una página o un directorio relacionados con el dominio raíz que no deseas que el usuario-agente rastree. Al menos debe haber una o varias allow o disallow por regla.

Allow

Corresponde a una página o un directorio relacionados con el dominio raíz que el usuario-agente mencionado puede rastrear. Se usa para anular una directiva disallow y permitir el rastreo de un subdirectorio o una página en un directorio no permitido. En el caso de una sola página, especifica el nombre completo de la página como se muestra en el navegador.

Sitemap

Es la ubicación de sitemap para este sitio web. La URL del mapa del sitio debe ser una URL completa; en el caso de Google el bot de rastreo no presupone ni verifica alternativas http/https/. Los mapas del sitio son una buena forma de indicar el contenido que debe rastrear un motor.

archivo robots.txt

Bloquear un bot concreto (Google)

User-agent: Googlebot
Disallow: /

Bloquear búsquedas en Wordpress

User-agent: *
Disallow: /?s=
Disallow: /search

Bloquear temas, plugins y otros elementos de poco interés

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /wp-includes/
Disallow: /*/attachment/
Disallow: /tag/*/page/
Disallow: /tag/*/feed/
Disallow: /*/feed/
Disallow: /comments/
Disallow: /xmlrpc.php
Disallow: /?attachment_id*

Ralentización de un bot concreto

User-agent: noxtrumbot
Crawl-delay: 20

Bloquear una imagen concreta en Google Imágenes

User-agent: Googlebot-Image
Disallow: /images/mi-foto.jpg

Inhabiltar todo el rastreo menos una carpeta

User-agent: *
Disallow: /
Allow: /public/

Declaración de sitemaps

Sitemap: https://mi-web.com/post-sitemap.xml
Sitemap: https://mi-web.com/page-sitemap.xml
Sitemap: https://mi-web.com/portfolio-sitemap.xml
Sitemap: https://mi-web.com/product-sitemap.xml
Sitemap: https://mi-web.com/category-sitemap.xml
Sitemap: https://mi-web.com/post_tag-sitemap.xml
Sitemap: https://mi-web.com/project-type-sitemap.xml
Sitemap: https://mi-web.com/product_cat-sitemap.xml
Sitemap: https://mi-web.com/product_tag-sitemap.xml

Una vez creado nuestro archivo este puedes subirlo a la ubicación correcta vía FTP o gestor de ficheros de nuestros hosting. Es muy recomendable realizar una comprobación de que el archivo añadido es el correcto. Como tiene una naturaleza púbica, abre una ventana en tu navegador y teclea la ubicación del archivo robots.txt. Por ejemplo, https://mi-web.com/robots.txt

Definir un buen archivo robots.txt es esencial para optimizar nuestro crawl budget.

 

El archivo de configuración wp-config.php

Por último, el archivo de wp-config.php es el que contiene la configuraciones más esenciales de nuestra instalación de Wordpress. Hoy en día, la instalación de Wordpress suele realizarse mediante un wizard en nuestro propio alojamiento; esto implica la creación y configuración automática de este archivo.

¿Cuándo puede ser útil tocarlo? A no ser que quieras incluir alguna funcionalidad concreta (hay muchas), conocer como funciona y localizar los parámetros asociados a MySQL son muy útiles para una migración o restauración.

Parámetros BBDD de MySQL

/** Nombre de la base de datos */
define(‘DB_NAME’, ‘dbgffdehfebtny’);

/** MySQL usuario de la BBDD */
define(‘DB_USER’, ‘uudfehgvsgd1’);

/** MySQL contraseña de la BBDD */
define( ‘DB_PASSWORD’, ‘3dfn)eb!{+4ilL’ );

/** MySQL servidor*/
define(‘DB_HOST’, ‘localhost’);

¿Contraseña visible? Te invitamos a que investigues como mejorar este punto de seguridad para ahuyentar a los malos. Dudas y quejas

Presupuestos, felicitaciones, quejas, dudas existenciales ·  hola@vivraestudio.com | +34 633681063  · 
Presupuestos, felicitaciones, quejas, dudas existenciales ·  hola@vivraestudio.com | +34 633681063  · 
Presupuestos, felicitaciones, quejas, dudas existenciales ·  hola@vivraestudio.com | +34 633681063  ·