X

Error 500 en Moodle

Quienes trabajamos con plataformas educativas basadas en el popular CMS conocido como Moodle, es seguro que nos hayamos topado mas de una vez con diversos errores en nuestra web.

Es por eso que en este post hablaremos sobre qué es el error 500 en Moodle, también conocido como Internal Server Error, así como también las posibles causas y soluciones que se nos pueden presentar en nuestra plataforma de educación online, tal como vimos con otros CMS anteriormente como el Error 500 en Prestashop, una popular solución de e-commerce.

¿Qué es el error 500 en Moodle? ¿Cómo puedo detectarlo?

Antes de comenzar a hablar sobre los posibles factores que se pueden presentar para que se origine un error 500 en nuestro Moodle, vamos explicar brevemente que es dicho error y cómo poder verlo en los logs.

El error 500 del servidor es un código de error de Apache en donde el mismo puede ser originado en nuestra página web indicándonos que el servidor falló al completar una solicitud válida porque el código fuente es erróneo o el servidor web es incapaz de ejecutar la petición solicitada, este es un error muy común en Moodle.

Para poder ver el registro de logs de errores de nuestra web debemos de acceder al cPanel de nuestro sitio mediante la url tudominio.com/cpanel y luego ingresar a la opción con el nombre Errores, ahí veremos los últimos mensajes de error que arrojó nuestro sitio web y de esa manera podremos investigar con mejor orientación el problema que tengamos.

 

Casos de Error 500 en Moodle

En nuestra plataforma Moodle pueden existir varios factores que generen este error y es por ello que vamos a hablar sobre los más comunes para poder solucionarlos.

Permisos y Propietarios

Usar los permisos y propietarios incorrectos en los directorios y archivos de Moodle suelen ser una de las principales causas de que se obtenga un error 500 en la plataforma.

Para poder investigar y solventar este problema debemos de saber primero que nada que permisos y propietarios debemos de manejar en nuestro sitio lo cual está determinado por el handler de PHP que se esté usando en nuestro servidor web, por lo que es importante ponernos en contacto con nuestro proveedor de hosting para aclarar esta duda y poder ajustarlos correctamente.

Solución

Para poder solucionar este tema como comentamos antes debemos de saber que handler de PHP estamos usando en nuestro server. En el caso de nuestro hosting nuestros planes compartidos todos ellos funcionan con suPHP debido a que tiene una mejor seguridad evitando posibles inyecciones de malware en nuestro sitio.

Si el hosting que tienes usa esta composición debes de asegurarte de que los archivos tengan permisos 644 como máximo y las carpetas deben manejar permisos 755 así de esta manera nuestra web funcionará sin problemas ni alertas.

Incompatibilidad de recursos

Para permitir que nuestro sitio Moodle funcione sin problemas y de forma ágil es necesario tener una serie de requerimientos del lado del servidor tanto a nivel de hardware como a nivel de software.

Es importante consultar con el proveedor de hosting antes de montar nuestro sitio web debido a que si los recursos que tienen para brindar son menores a los requeridos es seguro que nos arroje diversos errores o directamente no funcione.

Solución

En este caso a nivel de hardware existen requerimientos básicos que son necesarios para que nuestra web funcione, como lo explica la web oficial de Moodle necesitamos como mínimo 200MB de espacio en disco, un procesador Dual Core y al menos 512MB de memoria RAM para que la plataforma opere sin problemas.

A nivel de software y configuraciones es necesario que el servidor cuente con un servicio web como puede ser Apache o Nginx para poder levantar los servicios necesarios.

También a partir de las nuevas versiones de Moodle es necesario como mínimo manejar la versión 7.0 de PHP o superior, de lo contrario no funcionará correctamente.

También es necesario tener instalada y activa la extensión de PHP intl en nuestro hosting a partir de las últimas versiones de Moodle.

Con respecto a los requerimiento a nivel de Basa de datos es necesario contar con cualquiera de estas opciones:

Base de datos Mínima versión Recomendada
PostgreSQL 9.4 Ultima
MySQL 5.6 Ultima
MariaDB 5.5.31 Ultima
Microsoft SQL Server 2008 Ultima
Oracle Database 11.2 Ultima

Recursos insuficientes

Es posible que al momento de realizar diversas acciones dentro de nuestro sitio web nos arroje un error 500 debido a la insuficiencia de recursos a nivel de servidor o PHP que tenemos permitido en nuestro sitio.

Esto puede deberse por falta de memoria disponible para realizar una determinada acción, por exceso del uso de CPU asignado o también porque el servidor llego al limite de procesos permitidos para correr en tu sitio web.

Estas limitaciones suelen ser controladas por diversas plataformas como puede ser CloudLinux que son capaces de limitar la disponibilidad de RAM, CPU y la cantidad de procesos para un determinado sitio.

Existe también la posibilidad que se vean errores de recursos insuficientes a nivel de las variables de PHP, en donde las más comunes que suelen dar este tipo de problemas son memory_limit, max_input_vars, post_max_size, upload_max_filesize.

Solución

Al igual que en el resto de los casos es necesario verificar el error_log para poder detectar cual es el problema con exactitud.

En el caso de los recursos a nivel del servidor es necesario que nos pongamos en contacto con nuestro proveedor de hosting ya que los mismos se ajustan solamente desde la configuración del server y no es posible realizarlas desde nuestro cPanel del sitio.

Con respecto a los valores de las diferentes variables de PHP podemos aumentarlas nosotros mismos colocando el valor que el sitio requiera.

Esto podemos realizarlo de forma manual editando el archivo php.ini que se encuentra en la raíz de nuestro sito o sino podemos editarlo de forma gráfica desde nuestro cPanel accediendo a la opción Seleccionar Versión PHP y luego dirigiéndonos a la opción Switch To PHP Options.

Ahí podremos ver las diferentes variables de PHP que recientemente comentamos y podremos modificar sus valores los cuales van a ser tomados por nuestro sitio web.

Htaccess mal configurado

Tener nuestro archivo htaccess mal configurado es un problema al momento que nuestro sitios web Moodle trata de levantar ya que se generan conflictos al momento de tratar de leer las reglas escritas en el mismo.

Muchas veces estas reglas son generadas automáticamente luego de realizar una actualización o agregado de un nuevo plugin a través de nuestra web donde las mismas no son compatibles con la estructura y configuraciones del servidor en donde está corriendo nuestro sitio.

Solución

En este caso es recomendable que revisen este tipo de problemas con un programador o el técnico del sitio web ya que las configuraciones de el archivo htaccess son muy sensibles.

Lo primero que debemos de realizar es de verificar en los logs del sitio para poder determinar que problema de sintaxis existe, si fuese un problema relacionado a variables de php como por ejemplo php_value memory_limit 128M podemos quitar esta variable y crear una archivo php.ini donde se ejecuta el script PHP de Moodle colocando el siguiente contenido dentro del mismo memory_limit = 128M, de esa manera la variable de límite de memoria de PHP tomará el valor colocado quitando el conflicto en el archivo htaccess.

Conclusión

Como todo sitio web, Moodle a pesar de ser una plataforma super completa puede presentar diversos errores y problemas a nivel de configuraciones y recursos del lado del servidor en donde para poder detectar con exactitud cual es el problema que tenemos debemos de verificar siempre nuestro error_log para luego saber que acciones tomar para solucionarlo.

Si te gusto nuestro post sobre los posibles errores 500 en Moodle, quizás te interesen los últimos artículos que hemos generado sobre otros CMS:

Artículos relacionados