Uno de los errores más comunes que saltan cuando se visitan páginas web es el «error 403 Prohibido». Las causas pueden ser muy diversas. Entre las posibles encontramos:
- Falta de una página por defecto en el sitio web
- Plugin defectuoso en CMS (ej. WordPress, Joomla!, PrestaShop)
- Infección Malware
- Permiso erróneo en archivos
- Bloqueo de ejecución en Servidor en tiempo de ejecución (denegación de acceso a un recurso)
En este artículo vamos a contemplar el último caso que se produce cuando realizamos una acción en nuestra web, por ej. actualizando un plugin, y el navegador nos devuelve el error 403:
Este «error 403 Prohibido – El acceso a este servidor ha sido denegado» (Forbidden – Access to this resource on the server is denied!) puede ser generado por el servidor web al encontrar una ejecución de código sospechosa.
Existe un componente en los servidores Apache o LiteSpeed llamado ModSecurity, que comprueba la ejecución de código y verifica contra una colección de reglas si es un ataque o un código inofensivo.
Si el código se marca como sospechoso el servidor, como medida de prevención, anula la ejecución del código y devuelve este error 403.
Por ello, si somos nosotros los que estamos ejecutando el código, y confiamos que es correcto, estaremos en un escenario de falso positivo por lo que tendremos 2 opciones:
- Ponernos en contacto con nuestro proveedor de hosting para que verifique el error en ModSecurity y ponga en lista blanca el ID generado por nuestro código.
- Desactivar temporalmente ModSecurity
En este segundo caso se puede realizar de manera sencilla desde cPanel. De dejamos el siguiente video explicativo: