Error 500 “Internal Server Error” Principales causas
Este error se produce al acceder a una pagina programada en php.
El error se puede producir por una amplia variedad de razones. Entre ellas se encuentra:
Permisos incorrectos
Asegúrate que tienes instalados los permisos correctos para todos tus archivos y directorios. Los permisos deben de ser:
- Archivos: 644
- Directorios: 755
Si necesitas corregir un gran numero de permisos en tu instalación, abre un ticket y nuestros técnicos pueden ayudarte a instalar los permisos de forma correcta y de forma automática.
Configuración archivo .htaccess
Una programación errónea o incompatible dentro del archivo .htaccess puede generar el error 500 en toda tu pagina web.
Para descartar esta situación , simplemente renombra el archivo .htaccess a un nombre temporal (cualquier nombre vale). Si una vez que has renombrado el archivo .htaccess el error desaparece, entonces es seguro que la programación de el archivo esta afectando negativamente a tu web. Tendrás que determinar que sección de esa programación es incorrecta. Seguramente , la mayor parte sera correcta, pero una sola linea incorrecta puede ser suficiente para generar el error 500. Posiblemente necesitaras ayuda de nuestros técnicos para determinar que sección es incorrecta.
Programación php incorrecta
Un programa php mal escrito genera siempre un error 500. En estos casos puede ser útil activar los errores, para saber en que linea de código se produce el error. Puedes activar los errores desde la sección de configuración php de tu panel de control.
Si el programa lo has escrito tu tendrás que revisar la programación. Si el programa es escrito por un tercero, habla con el para que te de una solución. Generalmente los programas comerciales están muy depurados y es muy raro que se produzcan errores 500 por problemas en la programación.
Versión de php incompatible con la programación
Es bastante común ver errores 500 cuando una pagina ha sido programada para php 5.6 o inferior, y se instala la versión php 7.0 o superior. En estos casos, la solución es sencilla, Basta con volver a la version 5.6 y el error se soluciona. También es indicativo que tu programación debe ser revisada para que pueda ser funcionar en el ultima versión de php y así disfrutar de las mejoras de velocidad, rendimiento y seguridad.
Bloqueo mediante firewall de aplicaciones Mod Security
Mod security nos permite proteger a nuestros clientes de ataques de hackers. Es una de nuestras lineas de defensa, y cada día se bloquean cientos de miles de ataques contra las webs alojadas en miHosting. Pero mod security genera errores 500 en las paginas cuya programación es considerada como insegura.
En todo momento puedes desconectar modsecurty desde tu panel de control. Si la desconexion elimina el error 500, significa que era producido por el firewall de aplicaciones y por lo tanto mantenerlo desconectado debilita grandemente la protección de tu web contra ataques de hackers.
Si tu programación es insegura, quizás una actualización a las ultimas versiones pudiera solucionar el problema y permitirte mantener modsecurity activo.