DNS RobotDNS Propagation Checker
InicioDNSWHOISIPSSL
DNS RobotDNS Propagation Checker

Kit de herramientas DNS de nueva generación

Política de PrivacidadTérminos de ServicioAcerca de NosotrosBlogContacto

Herramientas DNS

Consulta DNSDominio a IPConsulta NSConsulta MXConsulta CNAMEVer todo

Herramientas de Correo

Verificador de Registro SPFVerificador DMARCVerificador DKIMHerramienta de Prueba SMTPAnalizador de Cabeceras de CorreoVer todo

Herramientas Web

Consulta WHOISDisponibilidad de DominioBuscador de SubdominiosDetector de CMSAnalizador de EnlacesVer todo

Herramientas de Red

Herramienta PingTracerouteVerificador de PuertosVerificador de Cabeceras HTTPVerificador de Certificado SSLVer todo

Herramientas IP

Consulta de IPCuál Es Mi IPVerificador de Lista Negra IPIP a HostnameConsulta ASNVer todo

Herramientas Útiles

Escáner de Código QRGenerador de Código QRTraductor de Código MorseConversor de Texto a BinarioGenerador de Texto PequeñoVer todo
© 2026 DNS Robot. Desarrollado por: ❤ Shaik Brothers
Todos los sistemas operacionales
Made with
Home/Blog/Error 403 Forbidden: Qué significa y cómo solucionarlo

Error 403 Forbidden: Qué significa y cómo solucionarlo

Shaik Vahid1 mar 202610 min read
Guía para solucionar el error 403 Forbidden — causas de acceso denegado y soluciones paso a paso
Guía para solucionar el error 403 Forbidden — causas de acceso denegado y soluciones paso a paso

Key Takeaway

Un error 403 Forbidden significa que el servidor entendió tu solicitud pero se niega a conceder acceso. Como visitante, limpia la caché del navegador, desactiva tu VPN y verifica la URL. Como administrador del sitio, revisa los permisos de archivos (755 para carpetas, 644 para archivos), revisa las reglas de .htaccess y verifica la configuración del servidor.

¿Qué es un error 403 Forbidden?

Un error 403 Forbidden es un código de estado HTTP que significa que el servidor entendió tu solicitud pero se niega deliberadamente a cumplirla. A diferencia de un 404 (página no encontrada), el servidor sabe exactamente lo que pediste — simplemente no te lo va a dar.

La especificación HTTP (RFC 9110, Section 15.5.4) lo define así: el servidor entendió la solicitud pero se niega a autorizarla. Si se proporcionaron credenciales de autenticación, el servidor las considera insuficientes. Repetir la misma solicitud producirá el mismo resultado.

En términos simples: la puerta existe, pero no tienes permiso para pasar. El servidor ha decidido que tú — o cualquier persona en tu situación — no debe acceder a este recurso.

Note

Un 403 es un error del cliente (clase 4xx), lo que significa que el servidor cree que el problema está de tu lado. Esto es diferente de los errores 5xx como el 500 Internal Server Error, donde el servidor mismo está fallando.

Cómo se ve un error 403

El error 403 aparece de diferentes formas dependiendo del servidor, navegador y proveedor de hosting. Estos son los mensajes más comunes que encontrarás.

  • 403 Forbidden — el mensaje estándar

  • HTTP Error 403 – Forbidden — común en servidores IIS

  • 403 — Forbidden: Access is denied — variante de Windows/IIS

  • Error 403 — forma abreviada en la barra de direcciones del navegador

  • Forbidden: You don't have permission to access this resource — mensaje predeterminado de Apache

  • Access Denied — mensaje genérico sin el código de estado

  • nginx 403 forbidden — página de error predeterminada de Nginx

  • Error 1020: Access Denied — bloqueo del firewall de Cloudflare (envuelve un 403)

Sin importar la redacción exacta, el significado siempre es el mismo: el servidor no te permitirá acceder a la página o archivo solicitado.

403 vs 401 vs 404: ¿Cuál es la diferencia?

Estos tres códigos de error se confunden con frecuencia. Así es como se diferencian.

Código de estadoSignificado¿Se puede arreglar?Ejemplo
401 UnauthorizedNecesitas iniciar sesión primeroSí — proporciona credenciales válidasAcceder al panel de administración sin iniciar sesión
403 ForbiddenIniciaste sesión pero no tienes permisoDepende — el servidor te está bloqueandoIntentar acceder a archivos de otro usuario
404 Not FoundLa página no existeVerifica la ortografía de la URLVisitar una página eliminada o con errores de escritura

La diferencia clave: un error 401 te dice que te autentiques. Un error 403 te dice que la autenticación no ayudará — el servidor ya decidió que no puedes acceder a este recurso. Un 404 significa que el recurso no existe en absoluto.

Causas comunes del error 403 Forbidden

Entender por qué ocurre un 403 te ayuda a solucionarlo más rápido. Estas son las causas más comunes, divididas según si eres visitante o administrador del sitio.

  • Permisos de archivo incorrectos — archivos configurados en 600 o carpetas en 700 bloquean el acceso público

  • Reglas .htaccess mal configuradas — directivas deny o reglas mod_rewrite que bloquean solicitudes

  • Archivo index faltante — sin index.html o index.php, y el listado de directorio está desactivado

  • Bloqueo de IP — reglas del servidor o firewall bloqueando tu dirección IP o país

  • Interferencia de VPN o proxy — la IP de tu VPN puede estar en una lista de bloqueo

  • Protección contra hotlink — el servidor bloquea enlaces directos a imágenes o archivos desde otros dominios

  • Conflictos con plugins de WordPress — plugins de seguridad como Wordfence o iThemes bloqueando solicitudes

  • Web Application Firewall (WAF) — Cloudflare, Sucuri o ModSecurity marcando tu solicitud

  • Problemas con el certificado SSL — certificados expirados o mal configurados pueden provocar bloqueos de acceso

  • Limitación de velocidad — demasiadas solicitudes desde tu IP en un período corto

Cómo solucionar el 403 como visitante

Si estás viendo un error 403 en un sitio web que no es tuyo, estos son los pasos a seguir. Están listados en orden — comienza desde arriba.

1. Verifica la URL

La solución más simple suele ser la correcta. Asegúrate de que estás visitando una URL de página, no una URL de directorio. La mayoría de los servidores bloquean la exploración de directorios por defecto.

Por ejemplo, visitar https://example.com/images/ (una carpeta) devolverá 403 en la mayoría de los servidores, mientras que https://example.com/images/logo.png (un archivo específico) funciona bien. Revisa que no haya errores de escritura y asegúrate de que la URL apunte a una página real.

Tip

Intenta agregar index.html o index.php al final de la URL. Si funciona, el servidor no tiene un archivo index predeterminado.

2. Limpia la caché y cookies del navegador

Tu navegador puede estar enviando cookies obsoletas o tokens de autenticación en caché que el servidor está rechazando. Limpiarlos fuerza una solicitud nueva.

text
Chrome:  Settings → Privacy → Clear browsing data → Cookies + Cached images
Firefox: Settings → Privacy → Clear Data → Cookies + Cache
Safari:  Settings → Privacy → Manage Website Data → Remove All
Edge:    Settings → Privacy → Clear browsing data → Cookies + Cache

Después de limpiar, cierra y vuelve a abrir tu navegador, luego intenta la URL de nuevo.

3. Desactiva tu VPN o proxy

Las VPN y los servidores proxy enrutan tu tráfico a través de direcciones IP compartidas. Si otro usuario en la misma VPN abusó del sitio, tu IP compartida puede estar en una lista de bloqueo.

Desconecta tu VPN temporalmente e intenta acceder al sitio de nuevo. Si funciona, el problema es un bloqueo basado en IP. Puedes intentar cambiar a un servidor VPN diferente o contactar al propietario del sitio.

4. Prueba una red o dispositivo diferente

Si el 403 persiste, cambia a una red diferente (datos móviles en vez de Wi-Fi, o viceversa). Esto ayuda a determinar si tu dirección IP está siendo bloqueada.

También puedes probar con un dispositivo o navegador diferente. Si la página carga en un navegador pero no en otro, el problema probablemente está relacionado con datos en caché o extensiones del navegador, no con un bloqueo de IP.

Warning

Si obtienes 403 en todos los navegadores y redes, el propietario del sitio probablemente bloqueó tu acceso intencionalmente, o la página está genuinamente restringida. Contacta al administrador del sitio.

Cómo solucionar el 403 como administrador del sitio

Si los visitantes reportan errores 403 en tu sitio — o los estás viendo tú mismo — la solución casi siempre está en la configuración del servidor. Revisa estos puntos en orden.

5. Corrige los permisos de archivos y directorios

Los permisos de archivo incorrectos son la causa número uno de errores 403 en servidores web. Los permisos estándar para un servidor web son 755 para directorios y 644 para archivos.

Esto es lo que significan esos números: el primer dígito es el permiso del propietario, el segundo es el grupo y el tercero es todos los demás. 7 = leer + escribir + ejecutar, 5 = leer + ejecutar, 4 = solo lectura.

bash
# Fix directory permissions (755 = owner rwx, group rx, others rx)
find /var/www/html -type d -exec chmod 755 {} \;

# Fix file permissions (644 = owner rw, group r, others r)
find /var/www/html -type f -exec chmod 644 {} \;

# Verify ownership (should match your web server user)
ls -la /var/www/html/

# Change ownership to web server user if needed
chown -R www-data:www-data /var/www/html/

Warning

Nunca configures los permisos en 777 (acceso total para todos). Es una vulnerabilidad de seguridad grave que expone tu servidor a modificaciones no autorizadas.

6. Revisa las reglas de .htaccess

En servidores Apache, el archivo .htaccess controla las reglas de acceso. Una sola línea mal configurada puede bloquear a todos los visitantes. Busca directivas Deny from all o reglas Require demasiado restrictivas.

La forma más rápida de probar: renombra .htaccess a .htaccess.bak temporalmente. Si el 403 desaparece, el problema está en ese archivo.

bash
# Temporarily rename .htaccess to test
mv /var/www/html/.htaccess /var/www/html/.htaccess.bak

# If 403 goes away, check the file for deny rules:
grep -i 'deny\|require\|allow' /var/www/html/.htaccess.bak

# Common problematic lines:
# Deny from all
# Require all denied
# Order deny,allow

Si el sitio funciona sin .htaccess, revisa el archivo línea por línea. Busca directivas Deny from all o Require all denied que puedan estar bloqueando tráfico legítimo. Reemplázalas con reglas específicas que solo bloqueen lo que deseas bloquear.

7. Agrega un archivo index predeterminado

Cuando un visitante solicita una URL de directorio (como example.com/blog/) sin especificar un archivo, el servidor busca un archivo index predeterminado. Si no existe y el listado de directorios está desactivado, obtienes un 403.

La solución: crea un archivo index.html o index.php en cada directorio de acceso público. También puedes configurar el servidor para permitir el listado de directorios, pero esto generalmente representa un riesgo de seguridad.

apache
# In .htaccess or Apache config — set default index files
DirectoryIndex index.html index.php index.htm

# If you want to allow directory listing (not recommended for production):
Options +Indexes

8. Desactiva los plugins de WordPress

Plugins de seguridad como Wordfence, iThemes Security, Sucuri y All In One WP Security pueden provocar errores 403 al bloquear solicitudes que consideran sospechosas. Esto ocurre con frecuencia después de una actualización de plugin o cambio de reglas.

Para probar, renombra la carpeta de plugins vía FTP o SSH para desactivar todos los plugins a la vez.

bash
# Disable all plugins by renaming the folder
mv /var/www/html/wp-content/plugins /var/www/html/wp-content/plugins.bak

# If 403 goes away, re-enable plugins one by one:
mv /var/www/html/wp-content/plugins.bak /var/www/html/wp-content/plugins
# Then deactivate/reactivate each plugin from WordPress admin

Si el 403 desaparece, vuelve a activar los plugins uno por uno para encontrar el culpable. Revisa los registros del firewall o seguridad del plugin para ver las solicitudes bloqueadas.

9. Verifica el bloqueo de IP y las reglas del firewall

El firewall de tu servidor o el panel de control del hosting puede estar bloqueando direcciones IP específicas, rangos o países enteros. Esto es común con fail2ban, CSF (ConfigServer Security & Firewall) o listas de bloqueo de IP a nivel de hosting.

Revisa las reglas del firewall y los registros del servidor para ver si IPs legítimas están siendo bloqueadas.

bash
# Check if an IP is blocked by iptables
iptables -L -n | grep "203.0.113.50"

# Check fail2ban jail status
fail2ban-client status

# Unban a specific IP
fail2ban-client set <jail-name> unbanip 203.0.113.50

# Check Apache deny rules in server config
grep -r 'Deny from\|Require not ip' /etc/apache2/

10. Verifica tu certificado SSL

Un certificado SSL expirado o mal configurado puede causar errores 403, especialmente cuando tu servidor requiere certificados de cliente o cuando se fuerza HTTPS pero el certificado no es válido.

Usa el SSL Checker de DNS Robot para verificar que tu certificado sea válido, tenga la cadena correcta y no esté expirado. Si usas Let's Encrypt, comprueba que la renovación automática esté funcionando.

bash
# Check SSL certificate expiry from terminal
openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates

# Renew Let's Encrypt certificate
sudo certbot renew --force-renewal

# Restart web server after renewal
sudo systemctl restart nginx  # or apache2

11. Soluciona Cloudflare 403 / Error 1020

Si tu sitio está detrás de Cloudflare, los errores 403 pueden provenir de las reglas del firewall de Cloudflare, no de tu servidor de origen. Cloudflare los muestra como Error 1020: Access Denied con un Ray ID.

Revisa el panel de Cloudflare en Security → Events para ver qué regla activó el bloqueo. Los activadores comunes incluyen Bot Fight Mode, reglas administradas de WAF o reglas de firewall personalizadas demasiado agresivas.

  • Security → WAF — revisa las reglas personalizadas, verifica si rutas legítimas están siendo bloqueadas

  • Security → Events — encuentra el Ray ID específico y ve qué regla activó el bloqueo

  • Security → Bots — Bot Fight Mode puede bloquear rastreadores legítimos y clientes API

  • Security Level — si está configurado en 'I'm Under Attack', todos los visitantes ven una página de desafío

  • IP Access Rules — verifica que tu IP o país no estén bloqueados accidentalmente

12. Soluciona Nginx 403 Forbidden

Nginx devuelve 403 por varios problemas de configuración específicos. El más común: el proceso worker de Nginx no tiene permiso de lectura sobre los archivos, o la directiva autoindex está desactivada para un directorio sin archivo index.

nginx
# Check Nginx error log for the exact cause
tail -f /var/log/nginx/error.log

# Common Nginx 403 causes and fixes:

# 1. Permission denied — Nginx runs as 'nginx' or 'www-data' user
# Fix: ensure the user running Nginx can read the files
chown -R nginx:nginx /var/www/html/

# 2. No index file in directory — add to server block:
location / {
    index index.html index.php;
}

# 3. SELinux blocking access (CentOS/RHEL)
setsebool -P httpd_read_user_content 1
# Or set proper context:
chcon -R -t httpd_sys_content_t /var/www/html/

SELinux es una causa frecuentemente pasada por alto de errores Nginx 403 en sistemas CentOS y RHEL. Incluso si los permisos de archivo son correctos, SELinux puede bloquear al proceso Nginx de leer archivos. El comando chcon anterior soluciona esto.

Depuración de errores 403 con HTTP Headers

Cuando no puedes determinar la causa, inspecciona los encabezados de respuesta HTTP del servidor. A menudo contienen pistas sobre por qué se bloqueó la solicitud.

Usa la herramienta HTTP Headers de DNS Robot o curl desde la terminal para ver la respuesta completa.

bash
# Check response headers for a 403 page
curl -I https://example.com/restricted-page

# Look for these headers:
# X-Blocked-By: Wordfence        → WordPress security plugin
# cf-ray: abc123-LAX             → Cloudflare blocked it
# server: cloudflare              → Cloudflare is in the path
# X-Sucuri-Block: 1              → Sucuri firewall
# X-WAF-Status: blocked          → Web Application Firewall

Encabezados como X-Blocked-By, cf-ray y encabezados personalizados X-WAF te dicen exactamente qué sistema está bloqueando la solicitud. Esto reduce tu investigación al firewall, CDN o plugin de seguridad específico responsable.

¿Afecta un error 403 al SEO?

Sí, los errores 403 pueden perjudicar tu posicionamiento en buscadores si afectan páginas rastreables. Cuando Googlebot encuentra un 403, trata la página como bloqueada y eventualmente la eliminará del índice.

Unos pocos errores 403 en páginas intencionalmente restringidas (paneles de administración, archivos privados) son normales y no afectarán tu SEO. Pero si contenido público devuelve 403, Google dejará de posicionar esas páginas en cuestión de días.

Revisa Google Search Console en Pages → Not indexed → Blocked by 403 para ver si Googlebot está siendo bloqueado de páginas importantes.

Warning

Si una página previamente indexada comienza a devolver 403, Google la eliminará de los resultados de búsqueda. Corrige los errores 403 en páginas públicas inmediatamente.

Cómo prevenir errores 403

La prevención es más fácil que la solución de problemas. Sigue estas prácticas para evitar errores 403 en tu sitio.

  • Configura los permisos correctos desde el inicio — 755 para directorios, 644 para archivos, nunca 777

  • Siempre ten un archivo index — cada directorio público necesita index.html o index.php

  • Prueba los cambios en .htaccess — respalda el archivo antes de modificarlo, prueba una regla a la vez

  • Monitorea tus reglas WAF — revisa los registros de Cloudflare, Sucuri o ModSecurity semanalmente

  • Agrega tus propias IPs a la lista blanca — asegúrate de que las IPs de tu oficina, casa y servidor de despliegue estén en la lista blanca

  • Usa la [herramienta HTTP Headers](/http-headers) — verifica regularmente que tus páginas devuelvan 200, no 403

  • Configura monitoreo — usa monitoreo de uptime para recibir alertas cuando las páginas comiencen a devolver 403

Verifica tus encabezados de respuesta HTTP

Usa la herramienta gratuita HTTP Headers de DNS Robot para inspeccionar el estado de respuesta, encabezados e información del servidor de cualquier URL al instante.

Try HTTP Headers

Frequently Asked Questions

Un error 403 Forbidden significa que el servidor entendió tu solicitud pero se niega a conceder acceso. El recurso existe, pero el servidor ha decidido que no estás autorizado para verlo — incluso si ya iniciaste sesión.

Related Tools

HTTP Headers CheckSSL Certificate CheckDNS LookupPort Checker

Related Articles

Error HTTP 500 Internal Server Error: Causas y Cómo Solucionarlo504 Gateway Timeout: Qué Significa y Cómo SolucionarloError HTTP 503 Service Unavailable: Causas y Cómo Solucionarlo"Tu conexión no es privada" — Cómo Solucionarlo (Todos los Navegadores)ERR_SSL_PROTOCOL_ERROR: Cómo Solucionarlo (Chrome, Edge, Todos los Navegadores)

Table of Contents

  • ¿Qué es un error 403 Forbidden?
  • Cómo se ve un error 403
  • 403 vs 401 vs 404: ¿Cuál es la diferencia?
  • Causas comunes del error 403 Forbidden
  • Cómo solucionar el 403 como visitante
  • 1. Verifica la URL
  • 2. Limpia la caché y cookies del navegador
  • 3. Desactiva tu VPN o proxy
  • 4. Prueba una red o dispositivo diferente
  • Cómo solucionar el 403 como administrador del sitio
  • 5. Corrige los permisos de archivos y directorios
  • 6. Revisa las reglas de .htaccess
  • 7. Agrega un archivo index predeterminado
  • 8. Desactiva los plugins de WordPress
  • 9. Verifica el bloqueo de IP y las reglas del firewall
  • 10. Verifica tu certificado SSL
  • 11. Soluciona Cloudflare 403 / Error 1020
  • 12. Soluciona Nginx 403 Forbidden
  • Depuración de errores 403 con HTTP Headers
  • ¿Afecta un error 403 al SEO?
  • Cómo prevenir errores 403
  • FAQ