La mejor guía .htaccess para SEO: con ejemplos
Publicado: 2022-09-11
Después de realizar algunos cambios en su archivo .htaccess, es posible que su sitio web se haya desconectado. ¡Pero esto no es motivo de preocupación! Muchos SEO caen en esta trampa cuando intentan ir más allá al hacer arreglos técnicos.
Normalmente, editar el archivo .htaccess a través del panel de WordPress provoca un ataque de pánico porque no puede acceder al panel una vez que haya actualizado el archivo .htaccess incorrecto. Los archivos .htaccess son tanto una bendición como una maldición para los SEO porque te permiten cambiar las operaciones de tu sitio web.
Si su sitio web se ejecuta en el servidor web Apache, .htaccess puede ayudarlo con todo, desde protección con contraseña hasta redireccionamientos 301 y páginas de error personalizadas.
Este es el recurso que pensó que no existía si está buscando una solución rápida para que su sitio web vuelva a estar en línea después de una falla en la actualización de.htaccess o si desea obtener más información sobre cómo optimizar el archivo.htaccess de su sitio web.
Revisaremos algunos ajustes y consejos de Quick.htaccess para que usted, como SEO, pueda realizar modificaciones en su sitio web con confianza y sin temor a las consecuencias negativas.
Ya sabe qué es.htaccess y lo útil que es para un webmaster que utiliza el servidor web Apache. Sin embargo, para aquellos que son nuevos en .htaccess, repasaré los conceptos básicos para ayudarlos a comprenderlo antes de implementarlo.
¿Qué es .htaccess?

.htaccess es un archivo de configuración que el software Apache Web Server puede leer y ejecutar para activar o desactivar funcionalidades y capacidades adicionales. Debido a que el archivo .htaccess se crea en un entorno basado en Unix y se representa a nivel de directorio, anula la configuración del servidor web global, lo que permite la configuración específica del acceso al sitio web.
¿Qué significa .htaccess?
El "acceso de hipertexto" se abrevia como .htaccess. Después de que el archivo se hizo popular entre los desarrolladores que lo usaban para ajustar las funciones de accesibilidad del usuario por directorio, se derivó el apodo.
Las directivas http.config del servidor Apache son utilizadas por .htaccess para habilitar y limitar el acceso a directorios para usuarios con nombres de usuario y contraseñas. Sin embargo, cuando se trata de SEO, .htaccess juega un papel aún más importante.
¿Para qué se usa .htaccess?
Considere .htaccess una ventaja si tiene un sitio web que tiene muchos criterios diferentes de forma regular.
Como SEO, puede usar .htaccess para ordenar al servidor web que realice redireccionamientos 301, active el almacenamiento en caché, modifique los encabezados HTTP, controle el rastreo y haga que las URL sean compatibles con SEO, entre otras cosas.
¿Dónde puede encontrar el archivo .htaccess?
Debido a que .Htaccess es una configuración a nivel de directorio, lo encontrará en prácticamente todas las carpetas de su directorio web. El archivo .htaccess se puede encontrar en el directorio raíz, así como dentro de cada subcarpeta si tiene un solo directorio web con varios subdirectorios (sitio web).
Si está utilizando WordPress, la opción de complemento Yoast es la mejor manera de acceder al archivo .htaccess.
Precaución: Debido a que .htaccess no es algo con lo que los principiantes deban experimentar, recomiendo hacerlo primero en el sitio de demostración. Si se bloquea el administrador de WordPress, necesitará saber cómo usar Filezilla para acceder a la carpeta raíz.
Hay algunos complementos que le permiten modificar el archivo .htaccess si tiene un sitio web de WordPress. Debido a que la mayoría de los usuarios de WordPress usan Yoast como su complemento de SEO predeterminado, le mostraré cómo cambiar el archivo .htaccess desde el panel de control de Yoast.
Paso 1: Vaya a su panel de administración de WordPress e inicie sesión.
Paso 2: Ve a la página de configuración de Yoast.
Paso 3: Abra el menú Herramientas.
Paso 4: seleccione "Editor de archivos" en el menú de herramientas.
Paso 5: Guarde el archivo .htaccess después de editarlo.
La configuración predeterminada de .htaccess en la mayoría de los sitios web de WordPress es la siguiente:
# COMENZAR WordPress
Motor de reescritura encendido
Reescribir Base /
Regla de reescritura ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Regla de reescritura. /index.php [L]
# FIN WordPress
¿Qué sucede si su sitio web no tiene un archivo .htaccess?
Debido a que.htaccess es un archivo de configuración creado automáticamente, estará presente en el 99 por ciento de las circunstancias. Sin embargo, debido a que normalmente es un archivo oculto dentro de los directorios, los webmasters creen que se ha perdido. Debería poder encontrarlo si habilita "mostrar archivos ocultos".
Si aún no puede encontrar el archivo .htaccess después de todo esto, deberá crear uno manualmente y cargarlo en su servidor web.
Pasos para crear un archivo .htaccess personalizado
Paso 1: toma un bloc de notas y comienza a escribir.
Paso 2: escriba la configuración (para probar, use la configuración predeterminada proporcionada anteriormente)
Paso 3: Guarde el archivo como.htaccess en formato ASCII.
Paso 4: asegúrese de que el archivo no esté guardado en formato .txt.
Paso 5: Sube el archivo .htaccess a tu directorio web con Filezilla.
Nota: si está utilizando WordPress y el campo del archivo .htaccess está vacío, simplemente agregue la configuración y guárdela.
¿Qué hacer si se bloquea el Panel de WordPress después de actualizar el archivo .htaccess?
Es posible que se le haya bloqueado el panel de control después de actualizar el archivo .htaccess con Yoast o WP File Manager. No te preocupes. Este es un problema simple de resolver.
Si es un SEO, solicite acceso FTP a su sitio web al desarrollador o administrador del servidor. Si necesita ayuda de un profesional, su desarrollador puede ser la persona ideal para llamar.
Paso 1: Abra FileZilla e inicie sesión en su directorio web.
Paso 2: Abra el directorio y descargue el archivo .htaccess.
Paso 3: Reemplace la configuración predeterminada en el archivo .htaccess y guárdelo.
Paso 4: en el directorio, reemplace el archivo old.htaccess con el nuevo.
Utilice el código predeterminado si su prioridad es que el sitio web vuelva a estar en línea lo antes posible. Si ha realizado muchos cambios en el archivo .htaccess, busque el código que salió mal. Elimínelo del archivo antes de volver a cargarlo en el servidor.
¿Por qué aparece un error después de actualizar el archivo .htaccess?
Si eres un SEO que intenta aprender .htaccess desde cero, seguramente cometerás algunos errores al principio. Esto está bien hasta que descubras por qué el servidor web informó un problema.
Cuando se trata de cambiar el archivo .htaccess, hay algunos problemas frecuentes que enfrentan los SEO. Los problemas más comunes de .htaccess se enumeran a continuación.
- Anulación deshabilitada: primero debe habilitar AllowOverride para que funcione su archivo .htaccess. Todas las personalizaciones establecidas en el.htaccess se desactivarán si la opción AllowOverride se establece en Ninguno. Para asegurarse de que la opción Anular esté activada, haga lo siguiente:
Paso 1: navegue hasta el archivo de configuración de Apache y haga doble clic en él (http.conf)
Paso 2: Cambie Allow OverRide a AllowOverride All en la directiva AllowOverride.
Paso 3: guarde el archivo de configuración de Apache y reinicie Apache.
- Nombre de archivo mal escrito: el segundo error de SEO más común es escribir mal el nombre del archivo. Misspelling.htaccess dará como resultado un error porque es un archivo de configuración basado en Unix guardado en ASCII. El servidor Apache ignorará el archivo y la configuración que proporcione si el archivo no comienza con un "." o se carga en un tipo de archivo diferente, como.txt.
- La jerarquía de los archivos .htaccess es importante: la jerarquía de los archivos .htaccess es importante: la jerarquía de los archivos .htaccess es importante: la jerarquía de los archivos .htaccess Algunas reglas agregadas al principio de los archivos .htaccess pueden anular las reglas agregadas más adelante en la configuración. Si cree que estos son cruciales, considere mover la configuración a la parte superior.
- Múltiples archivos.htaccess: debido a que los archivos.htaccess se pueden usar por directorio, su sitio web podría estar usando múltiples archivos.htaccess. En tales circunstancias, la configuración de un archivo puede entrar en conflicto con la de otro, lo que puede generar problemas. Los archivos individuales.htaccess se pueden deshabilitar para solucionar este problema.
- Error de sintaxis: la funcionalidad del archivo.htaccess depende completamente de la sintaxis utilizada para configurar su sitio web. Un problema de sintaxis de archivos puede desconectar su sitio y provocar un ataque de pánico. Como resultado, es fundamental comprender la sintaxis antes de realizar cambios en sus archivos .htaccess.
¿Cuáles son los mensajes de error comunes que recibe después de actualizar el archivo .htaccess?
Un usuario interactúa con el servidor web directa o indirectamente cada vez que visita su sitio web. El servidor web obtiene los sitios que ven cuando los usuarios hacen clic en las fotos y otros recursos que ven, por lo tanto, puede limitarlo como webmaster.
.htaccess es un archivo que utilizan algunos sitios web para configurar la autenticación para acceder a sus páginas. Cuando se trata de SEO, lo emplean para asegurarse de que los visitantes y los robots de los motores de búsqueda tengan acceso rápido a las páginas que son más importantes para ellos. El servidor web genera un código de error basado en las configuraciones definidas en el archivo .htaccess si el sitio web no proporciona la información deseada.
Aquí está la lista de códigos de error que muestran los servidores web una vez que no pueden obtener los datos solicitados.
Errores de solicitud del cliente
- 400 — Solicitud incorrecta: estructura de URL no válida. El servidor no puede entender la solicitud planteada por el usuario.
- 401 — Se requiere autorización: estos mensajes se muestran cuando los webmasters han restringido el acceso a la página.
- 402 — Pago requerido (aún no se usa): si la iniciación del pago no se realiza, generalmente proporciona este código.
- 403 — Prohibido: la simple razón por la que recibe un error 403 es porque está intentando acceder a un recurso que tiene permisos restringidos. Un sitio web muestra errores prohibidos 403 cuando los usuarios intentan acceder a una página que requiere autenticación.
- 404 — No encontrado: 404 es una indicación clara para los usuarios de que la URL solicitada no está disponible en el sitio web. Puede deberse a un error tipográfico en la URL o cuando la página se eliminó del sitio.
- 405 — Método no permitido: este código de estado de respuesta HTTP indica que el servidor se ha negado a aceptar el método de solicitud a pesar de comprender el propósito de la solicitud.
- 406: no aceptable (codificación): esto suele ocurrir cuando el servidor no puede responder con la solicitud de aceptación del encabezado.
- 407 — Se requiere autenticación de proxy: este error indica que la solicitud no se puede cumplir debido a la falta de autenticación de servidor proxy entre el navegador y el servidor.
- 408 — Solicitud agotada: este es uno de los errores HTTP comunes que los webmasters encuentran cuando el servidor no recibe una solicitud completa del lado del cliente dentro del período de tiempo de espera asignado.
- 409 — Solicitud en conflicto: este error ocurre cuando el estado del recurso de destino entra en conflicto con el estado actual. Para resolver el error, identifique el conflicto y vuelva a enviarlo.
- 410 — Desaparecido: este código de error representa que el acceso al recurso solicitado se eliminó permanentemente del servidor y permanecerá así durante todo el proceso.
- 411 — Longitud de contenido requerida: el error representa la incapacidad del servidor para aceptar la solicitud del cliente debido a que no se pudo definir el encabezado de longitud de contenido.
- 412 — Precondición fallida: se trata de un error causado por un conflicto de seguridad con una o varias de las configuraciones de seguridad que se implementaron en su servidor.
- 413 — Entidad de solicitud demasiado larga: cuando el recurso solicitado es demasiado grande para que el servidor lo cargue, el usuario puede experimentar el error 413.
- 414 — Solicitud de URI demasiado larga: solo piense en una estructura de URL de más de 2048 caracteres. El servidor no puede descifrar el error 414 resultante.
- 415 — Tipo de medio no compatible: este error aparece cuando el servidor se niega a cargar un recurso que está en un formato de medio no compatible.
Errores del servidor
- Error interno de servidor 500
- 501 — No implementado
- 502 Puerta de enlace no válida
- 503 Servicio no Disponible
- 504 — Tiempo de espera de puerta de enlace
- 505 — Versión HTTP no admitida.
¿Para qué se usa .htaccess?

Redirecciones
¿Ha cambiado recientemente el nombre de dominio de su sitio web?

Como SEO, no quiere que sus usuarios vean una página 404, y ciertamente no quiere que se evapore toda su autoridad ganada con tanto esfuerzo.
Considere su archivo .htaccess como una solución a estos dos problemas. Puede redirigir su tráfico y la autoridad del sitio al nuevo dominio agregando la directiva de redirección a su archivo .htaccess.
Lo interesante es que puedes hacer lo mismo con las URL de tu sitio web. Puede obligar a los usuarios y a los robots de los motores de búsqueda que intentan acceder a una URL antigua a ver una página nueva en su sitio mediante una directiva de redireccionamiento 301.
Con .htaccess, aquí hay un ejemplo de una redirección a nivel de dominio:
# Esto le permite redirigir todo su sitio web a cualquier otro dominio
Redirección 301 / http://ejemplo.com/
Usando .htaccess, aquí hay un ejemplo de una redirección de URL:
RedirectMatch 301 ^/antigua-url.html$ /nueva-url.html
URL compatibles con SEO
¿Está desordenada la estructura de sus URL? ¿Los visitantes y los robots de los motores de búsqueda tienen problemas para descifrar lo que hay en la página? Esto es algo a lo que se enfrentan muchos webmasters.
Después de que un sitio web obtiene autoridad, no prestar atención a la estructura de la URL se convierte en un problema importante.
Puede establecer el formato de URL correcto para su sitio web utilizando .htacces.
Además, cualquier extensión que venga con su URL, como .html o .php, puede eliminarse simplemente agregando directivas al archivo .htaccess.
Ejemplo 1: uso de .htaccess para eliminar extensiones en la URL
Eliminando .php como extensión
Motor de reescritura en
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
Regla de reescritura ^(.*)$ $1.php [NC,L]
Eliminando .html como extensión
Motor de reescritura en
RewriteCond %{REQUEST_FILENAME} !-d
Reescribir Cond %{REQUEST_FILENAME}.html -f
Regla de reescritura ^(.*)$ $1.html [NC,L]
Ejemplo 2: Uso de .htaccess para convertir las URL en minúsculas
Método 1
Reescribir Cond %{REQUEST_URI} [AZ]
Regla de reescritura. ${lc:%{REQUEST_URI}} [R=301,L]
Todas las estructuras de URL, incluido el nombre de dominio, se verán afectadas por el código antes mencionado.
Método 2
Reescribir Cond %{REQUEST_URI} [AZ]
Regla de reescritura ^.+.html$ ${lc:%{REQUEST_URI}} [NC,R=301,L]
Solo los nombres de archivo html se verán afectados por el anterior.
Ejemplo 2: uso de .htaccess para reescritura de URL dinámica
Motor de reescritura encendido
Regla de reescritura /(.*)/(.*)/$ page.php?category=$1&product=$2
URL incorrecta: site.com/page.php?category=2&product=54
Buena URL: site.com/sandwiches/rueben-sandwich/
- Usando .htaccess para mejorar la velocidad del sitio
La nueva palabra de moda entre los webmasters es la velocidad de la página.
Tienen todas las razones para causar un alboroto, ya que Google ahora lo considera uno de los elementos más importantes en la clasificación de páginas en SERP.
Google no quiere que los usuarios tengan una experiencia negativa al visitar las páginas mejor clasificadas.
Un sitio web de carga lenta también desperdicia gran parte del presupuesto de rastreo.
Configurar su archivo .htaccess es una de las formas más simples y seguras de aumentar la velocidad de su sitio web.
- Habilitación de la función de caché
Al habilitar la función de caché en el archivo .htaccess, los recursos del sitio web se guardan en el navegador del visitante, lo que permite una carga más rápida.
Puede habilitar el caché usando dos métodos diferentes
ExperiesByType : puede especificar una ventana de tiempo de caché, también conocida como caducidad, para cada recurso en su sitio web utilizando este método en.htaccess.
Ejemplo:
<ifModule mod_headers.c>
# AÑO
<FilesMatch ".(ico|gif|jpg|jpeg|png|flv|pdf)$">
Conjunto de encabezado Cache-Control "max-age=29030400"
</FilesMatch>
# SEMANA
<FilesMatch ".(js|css|swf)$">
Conjunto de encabezado Cache-Control "max-age=604800"
</FilesMatch>
#45MIN
<FilesMatch ".(html|htm|txt)$">
Encabezado establecido Cache-Control "max-age=2700"
</FilesMatch>
</ifModulo>
Encabezado de control de caché: el encabezado de control de caché utiliza la edad máxima del recurso antes de la caducidad.
Ejemplo:
# Un mes para la mayoría de los activos estáticos
<filesMatch ".(css|jpg|jpeg|png|gif|js|ico)$">
Conjunto de encabezado Cache-Control "max-age=2628000, public"
</filesMatch>
Habilitación de la compresión Gzip
El tamaño de los recursos de un sitio web es el único factor que lo ralentiza. Puede reducir el tamaño de la imagen, el tamaño del archivo y el número de archivo mientras transmite datos al navegador del lado del cliente activando gzip en su archivo .htaccess.
Una de las directivas .htaccess más simples es habilitar la compresión gzip.
Aquí hay una ilustración:
<ifModule mod_gzip.c>
mod_gzip_on Sí
mod_gzip_dechunk Sí
archivo mod_gzip_item_include .(html?|txt|css|js|php|pl)$
controlador mod_gzip_item_include ^cgi-script$
mod_gzip_item_include mimo ^texto/.*
mod_gzip_item_include mimo ^aplicación/x-javascript.*
mod_gzip_item_exclude mimo ^imagen/.*
mod_gzip_item_exclude rspheader ^Codificación de contenido:.*gzip.*
</ifModulo>
Habilitación de la opción desinflado
Debido a que algunos servidores web no admiten gzip, el sitio web puede tener dificultades. En tales casos, se recomienda la opción deflate en el archivo .htaccess.
Aquí hay una ilustración:
<IfModule mod_deflate.c>
# Comprimir texto, HTML, JavaScript, CSS, XML
AddOutputFilterByType DEFLATE aplicación/javascript
AddOutputFilterByType DEFLATE aplicación/rss+xml
AddOutputFilterByType DEFLATE aplicación/fuente x
AddOutputFilterByType DEFLATE aplicación/x-font-opentype
AddOutputFilterByType DEFLATE aplicación/x-font-otf
AddOutputFilterByType DEFLATE aplicación/x-font-truetype
AddOutputFilterByType DEFLATE aplicación/x-font-ttf
AddOutputFilterByType DEFLATE aplicación/x-javascript
AddOutputFilterByType DEFLATE aplicación/xhtml+xml
AddOutputFilterByType DEFLATE aplicación/xml
AddOutputFilterByType DEFLATE fuente/otf
AddOutputFilterByType DEFLATE fuente/ttf
AddOutputFilterByType DESINFLAR imagen/svg+xml
AddOutputFilterByType DEFLATE imagen/icono x
AddOutputFilterByType DEFLATE texto/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE texto/sin formato
AddOutputFilterByType DEFLATE texto/xml
# Las siguientes líneas son para evitar errores con algunos navegadores
BrowserMatch ^Mozilla/4 gzip-solo-texto/html
BrowserMatch ^Mozilla/4.0[678] sin gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
BrowserMatch bMSI[E] !no-gzip !gzip-only-text/html
# No almacenar en caché si estos archivos ya están en caché
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ sin gzip
# Los proxies deben dar el contenido correcto
# Encabezado agregar Vary User-Agent env=!dont-vary
Encabezado agregar Vary User-Agent
</IfModule>
Uso de .htaccess para mejorar el rastreo y la indexación
Es posible que ya esté utilizando el archivo robot.txt para controlar si los motores de búsqueda pueden o no rastrear e indexar su sitio. Sin embargo, es posible que su sitio contenga recursos que no sean una página web. El rbot.txt puede no funcionar en tales casos.
Configurar una etiqueta X-robots en su archivo .htaccess es la técnica ideal para hacer que algunos recursos, como un PFD o un documento de Word, no estén indexados.
El encabezado personalizado del archivo .htaccess es compatible con todas las directivas del indexador.
Ejemplo:
<FilesMatch ".(docx|pdf)$">
Encabezado agregar X-robots-tag "noindex, noarchive, nosnippet"
</FilesMatch>
Cualquier archivo con las extensiones.doc y.pdf se considerará noindex, noarchive y nonippet en esta situación.
Casi todos los servidores Apache vienen con un archivo de configuración preconfigurado. Sin embargo, debido a que esto se aplica a todo el sitio, es difícil configurar la personalización a nivel de directorio.
Aquí es donde .htaccess resulta útil. El archivo .htaccess se puede usar para anular los ajustes de configuración de Apache en el nivel de directorio y subcarpeta.
Además, puede configurar la autenticación mediante códigos de configuración simples. Esto es especialmente beneficioso si tiene muchos sitios web en una cuenta de alojamiento compartido.
Ventajas del archivo .htaccess
- Todas las solicitudes son leídas por él.
- Sin tener que reiniciar el servidor, se puede realizar una modificación de inmediato.
- Administre el acceso de los usuarios de manera efectiva en función de sus preferencias.
- Establece la configuración a nivel de directorio.
- Para los SEO, esto es una gran ayuda.
Desventajas del archivo .htaccess
- El uso de archivos .htaccess puede mejorar las preocupaciones de seguridad asociadas con el alojamiento de un sitio web.
- Debido a que el archivo.htaccess se escanea y se lee cada vez que se carga una página, es más lento que la configuración del lado del servidor.
- Tiene un efecto en la velocidad de un sitio web que recibe millones de visitantes.
Debido a problemas de seguridad y rendimiento, no se recomiendan los archivos .htaccess como medio de configuración del servidor.