Que es y cómo solucionar un error 500

¿Qué es el error 500 y cómo puedes solucionarlo?

Sabemos qué ingresar al ingresar a tu sitio o aplicativo web y encontrar un error 500, puede ser algo que te cause terror pero, no te desesperes a continuación te mostraremos como puedes solucionar este inconveniente y tener tu sitio web en línea de nuevo.

¿Qué puede generar un error 500?

  • Un error de permisos en los archivos o directorios.
  • Un tiempo de espera algún proceso PHP que se esté ejecutando en ese momento en la cuenta de hosting.
  • Un error de codificación en el archivo .htaccess.
  • Módulo Modsecurity este activo.
  • Funciones Prohibidas PHP.

¿Cómo se puede intentar corregir el error?

Para que se ejecuten correctamente los códigos registrados en los archivos y directorios del servicio de hosting, estos mismos deben tener los permisos adecuados para que se ejecuten correctamente, para el caso de los servidores Linux con administración cPanel, los permisos adecuados de los directorios son:

  • Archivos: 0644
  • Directorios: 0755

Directorios:

Son todas las carpetas que posea en el servicio de hosting.

Directorios o carpetas en el hosting

Archivos:

Son todos los archivos sueltos por fuera y dentro de un directorio.

Si los permisos no son correctos, se puede generar el error 500 y no permitir que el sitio web cargue correctamente.

Directorios o archivos en el hosting

Al subir el sitio web por este medio, el mismo aplicativo asigna los permisos correctos a los directorios y los archivos,
otra opción es asignarlos manualmente desde el servidor en el panel de control cPanel → administrador de archivos,
dando clic en el nombre de los permisos y asignado el permiso correcto.

Cómo arreglar permisos desde cPanel

Subir sitio por medio de Filezilla

En este artículo explicamos paso a paso cómo subir tu sitio web por medio de Filezilla. Clic aquí

Tiempo de espera

Algún proceso PHP que se esté ejecutando en ese momento en la cuenta de hosting puede estar generando el error.
Es posible que algunos proceso que se ejecuten en PHP requieran un tiempo de ejecución más amplio que él ofrece un servicio de hosting (30 segundos), si realiza la ejecución de algún proceso PHP que supere este tiempo (servicios de hosting compartido) es posible que se llegue a generar un error 500. Para este caso puede intentar comunicarse con el proveedor de hosting para validar si es posible ampliar el tiempo mientras realizar el proceso requerido (Subir información al servidor), si el proceso a realizar es de manera permanente se recomienda adquirir u servicio especial como un servidor VPS o un servidor Dedicado para realizar los procesos requeridos.

Modulo que muestra el tiempo de espera desde cPanel

Error de codificación en el archivo .htaccess

Al usar aplicativos CMS (WordPress, Jommla, PrestaShop), dentro del archivo .htaccess ubicado en la raíz del directorio principal del servicio de hosting para este caso  /public_html/.htaccess  se instale alguna línea de código que no sea compatible con los recursos o módulos PHP que tiene el servidor,  dicho proceso puede generar error 500, indicamos algunos ejemplos de como se puede apreciar la información:

Ubicación del archivo .htaccess

Ubicación del archivo .htaccess dentro del hosting

Archivo .htaccess

Archivo .htaccess

Códigos que pueden generar error 500 en el servidor

##No directory listings
<IfModule autoindex>
IndexIgnore *
</IfModule>

## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes

## Mod_rewrite in use.

RewriteEngine On

Begin - Rewrite rules to block out some common exploits.
##No directory listings
<IfModule autoindex>
IndexIgnore *
</IfModule>

## Can be commented out if causes errors, see notes above.
#Options +FollowSymlinks
Options -Indexes

## Mod_rewrite in use.

RewriteEngine On

## Begin - Rewrite rules to block out some common exploits.
DirectoryIndex default.html
AddType application / x-httpd-php php5
DirectoryIndex default.html
#AddType application / x-httpd-php php5

Módulo Modsecurity este activo

Este módulo de seguridad adicional filtra algunos procesos PHP en la cuenta de hosting para evitar procesos indebidos en cuanto a seguridad, en algunos servicios de hosting, las reglas son muy estrictas y pueden llevar a que se genere error 500 al momento de cargar el sitio web, para este caso se recomienda desactivar el módulo.

ModSecurity

Modsecurity habilitado en la cuenta de hosting:

Modsecurity habilitado

Modsecurity deshabilitado en la cuenta de hosting:

Modsecurity deshabilitado

Funciones PHP

Es posible que algunos desarrollos propios o aplicativos CMS, llamen dentro de su código funciones PHP que puedan estar restringidas en el servidor para su ejecución por razones de seguridad, para este caso sería necesario contactar al proveedor de servicio e indicar la posibilidad de habilitarlas en el servidor, de no poder realizarse este proceso es posible que se deba actualizar la cuenta de hosting a un servidor VPS o Dedicado.

Seleccionar versión PHP

Dentro del servicio de hosting puede verificar estas funciones PHP que puede habilitar según requiera:

Funciones PHP activas

Pero hay algunas que están restringidas por razones de seguridad:

dl, exec, passthru, proc_open, proc_close, shell_exec

Si es necesario que los módulos PHP estén activos para el funcionamiento del desarrollo u/o aplicativo, si sería necesario registrar un servidor VPS o Dedicado para tal fin.

Imagen de perfil de Jhonathan Duque
Jhonathan Duque

Asesor de soporte. Miembro del equipo Colombia Hosting SAS desde el año 2015.