25/01/202212 min

¿Qué es el “http error 500” y cómo solucionarlo en mi tienda PrestaShop?

¿Te han notificado alguna vez los usuarios que, navegando por tu web, la pantalla de pronto se les quedaba en blanco, apareciéndoles una anomalía llamada "http error 500"?

Éste es un problema que puedes encontrarte en ocasiones, sobre todo si en esos momentos estabas actualizando tu plantilla o uno de tus plugins o módulos.

Solucionar un “http error 500” es algo que puede ser sencillo, como comprobarás en el artículo de hoy.

Y es que, tras crear tu tienda online y configurar todo lo necesario para comenzar a vender online, un error interno del servidor de tipo 500 no debería acabar con tus ilusiones.

Aunque eso sí, permanece muy atento, pues un fallo http error 500, si se prolonga y persiste en el tiempo, puede derivar en abundantes pérdidas para la web de tu negocio, por la incapacidad para tus clientes de navegar por tu sitio web y, por ende, comprar tus productos.

Pero antes de nada, definamos de qué se trata:

¿Qué es un error 500?

Un error http 500 o “500 Internal server error” (Error interno del servidor) es el que nos muestra nuestro servidor cuando falla al ejecutar alguna petición o solicitud que, en principio, debería ser correcta.

Dado que cada servidor puede usar sus propios textos y nomenclatura, el mensaje puede adoptar múltiples formas.

Estos son algunas de las más maneras más habituales a través de las que nuestro servidor nos puede informar de que se ha producido este problema:

  • "500 Error interno del servidor"
  • "HTTP 500 - Error interno del servidor"
  • "Error interno del servidor"
  • "HTTP 500 Error interno"
  • "Error 500"
  • "Error HTTP 500"

¿Qué es un http error 500?

Ciertamente, una anomalía de este tipo puede borrarte la sonrisa si eres propietario de una tienda online y vives de ello.

Y para los desarrolladores web es una auténtica pesadilla: una carrera frenética para que tu página vuelva a estar totalmente operativa.

Pero, ¿es tan grave un error 500? ¿Qué significa error 500?

Aunque suena terrorífico, sufrir un problema de este tipo en la web de tu eCommerce no supone el fin del mundo.

En este artículo vamos a explicarte consejos para solucionar el error 500 en PrestaShop.

La próxima vez que suceda, ya no tendrás que esconderte debajo de la alfombra: ¡podrás actuar rápido, arreglarlo y seguir vendiendo con total normalidad!

¿Cómo detectar un  error 500 en PrestaShop?

En pocas palabras, el famoso error 500 es la forma que tienen los servidores web de decirte "¡Vaya! Algo ha ido mal, pero no podemos contarte más".

Es lo que llamamos un problema "del lado del servidor".

Eso significa que ha habido un fallo en el servicio de alojamiento que aloja el sitio web.

Es una advertencia extremadamente genérica, que suele deberse a temas de configuración en el PHP, la programación o los permisos del sitio web.

La mayoría de las veces verás este fallo acompañado de una explicación bastante ambigua parecida a esta:

"El servidor ha encontrado un error inesperado y no puede completar la solicitud del cliente".

Es muy importante no confundirlo con el famoso HTTP 404 - Página no encontrada que además también hemos tratado en este blog y que puedes consultar en cualquier momento.

No olvides que este error se puede producir en cualquier navegador y sistema operativo (no, pasarte al nuevo Mac Pro de Apple no te evitará que puedas tener que enfrentarte a él en algún momento...).

» En esta captura de pantalla tienes un ejemplo de cómo puede mostrarse este problema:

500 internal server error google

¿Cómo puedo solucionar un error http 500 en la web de mi tienda online?

Aunque el mensaje de error no es demasiado explícito, desde PrestaShop te desvelamos más detalles sobre este problema tan común.

Algunos servidores, debido a su configuración, suelen ocultar los mensajes de error más específicos.

Por ello, si con tu tienda tienes este mismo problema y los mensajes son demasiado escuetos, activa en tu web en PrestaShop los informes de error del FTP o del CPanel de tu alojamiento.

Hay 2 formas de activar estos informes, según la versión que uses:

» De PrestaShop v1.4 a v1.5.2

  1. Abre config/config.inc.php
  2. Sobre la línea 29 encontrarás esta línea @ini_set('display_errors', 'off');
  3. Cámbiala por ésta @ini_set('display_errors', 'on');

» PrestaShop v1.5.3 y posteriores (incluyendo la 1.6 y 1.7)

  1. Abre config/defines.inc.php
  2. Sobre la línea 28 encontrarás esta línea define('_PS_MODE_DEV_', false);
  3. Cámbiala por esta otra define('_PS_MODE_DEV_', true);

Una vez hayamos solucionado el error 500 o si ya tenemos la información necesaria para solucionarlo es muy importante volver a poner  '_PS_MODE_DEV_', false. No es nada recomendable dejar activo modo DEV en una tienda en producción

Cuando hayas activado los informes de error procedentes del FTP o del CPanel, podrás volver a navegar por el front-office o el back-office de tu tienda para reproducir el problema.

Por ejemplo: si no puedes acceder a tu sitio web debido a un error 500, activa el informe de errores y actualiza la página que ha fallado.

Encontrarás información adicional que te servirá para investigar un poco más acerca de dónde y por qué se produjo.

¿Cuáles pueden ser las posibles causas de un error 500?

¿Cómo detectar un el error http 500?

Ahora que ya tienes más datos, puedes usar algunos de los consejos estándar que a continuación te damos para seguir investigando.

Para empezar, repasa cuáles han podido ser las causas más habituales del problema. Cuando se sabe el motivo, es mucho más fácil encontrar la solución y actuar en consecuencia.

Algunos de esos motivos pueden deberse a:

1. Permisos

En muchos casos descubrirás que la configuración de permisos de una de tus carpetas está fallando.

Puede ser tan fácil de arreglar como cambiar el permiso de un archivo o carpeta de 777 a 755 (o viceversa).

Por norma general, los permisos 777 son increíblemente inseguros y hasta un “hacker” aficionado puede entrar en tus archivos e introducir código malicioso.

Comprueba las características específicas de los permisos con tu proveedor de alojamiento web, ya que algunos servidores usan normas distintas.

2. Configuración incorrecta de .htaccess

A menudo los problemas internos del servidor se deben a que el archivo htaccess está mal configurado.

Por lo que respecta a PrestaShop, los principales culpables suelen ser las opciones "URL Rewrite" y la activación de URL amigables.

La sintaxis htaccess es muy estricta y hasta un carácter o un comando equivocados pueden provocar un error interno 500 del servidor, por lo que desde la opción “URL’s amigables”, indicarle un «NO» podría ser la solución (al final, no olvides guardar cambios).

Mi consejo es que hagas una copia de seguridad de tu archivo htaccess y que lo restablezcas desde el back-office o desactivando las URL amigables.

3. Tiempo de espera agotado

Cada servidor tiene su propio tiempo de espera, que determina durante cuánto tiempo se puede ejecutar un script.

Si la función o el script superan ese límite, recibirás un error 500.

Estos son los scripts de PrestaShop que pueden tardar demasiado en cargar:

  • Importaciones CSV.
  • Copias de seguridad.
  • Carga de traducciones.
  • Importaciones/exportaciones.
  • Regeneración de vistas en miniatura.

Muchas veces, el límite del servidor es de 30 segundos, cantidad que resulta insuficiente para estos scripts.

En este caso, debes contactar con tu proveedor de alojamiento y pedirles que cambien ese parámetro (al menos temporalmente).

4. Módulos obsoletos

Es posible que cuando actualices tu tienda, por ejemplo de la versión 1.6 a la 1.7, te encuentres con módulos obsoletos o que sean incompatibles con esta nueva versión de PrestaShop.

Esto puede llegar a generar errores 500, por lo tanto, en caso de que ocurra, tendremos que revisar todos los addons que tengas instalados, o al menos los que intuyas o sepas de antemano que disponen de una versión más actual. 

Recuerda que un módulo de la 1.6 es incompatible con la versión 1.7 en adelante, por lo que tendrás que buscar la nueva versión del módulo compatible con la versión 1.7 e instalarla.

Te recomiendo para ello tener siempre a mano (o guardada en "favoritos") la página del Marketplace oficial de PrestaShop, donde puedes obtener los módulos oficiales y siempre actualizados.

Módulos obsoletos

¿Qué hacer si sigue persistiendo este error http 500 en mi tienda después de estos consejos?

Si es así, debes echarle un vistazo a los registros de error de Apache y PHP.

Éstos puede proporcionártelos tu proveedor de alojamiento, pero a veces hay que contactar directamente para que te den acceso a los archivos. También es buena idea contactar con la empresa o freelance que te desarrolló la tienda online, quizás haya alguna incompatibilidad con alguna programación específica que se haya realizado. PrestaShop es Open Source el código fuente está disponible para su descarga y su modificación o adaptación que pueden llevar a cabo programadores expertos en PrestaShop, si en tu tienda online habéis contratado estos servicios no te olvides de preguntar quizás de ahí venga el error.

"En nuestro foro podrás encontrar más soluciones"

Aunque te suene obvio, cuando tengas los datos concretos de PrestaShop sobre el error o el archivo de registro, búscalo en Google (céntrate en el problema y añade la palabra "PrestaShop" a la búsqueda).

Encontrarás toneladas de información y tutoriales sobre el error.

Además, seguro que te topas con algún hilo del foro de PrestaShop etiquetado como “[SOLUCIONADO]”.

Léelo con calma y, si después de leer esta entrada, buscar en Internet y trabajar con tu webmaster o tu proveedor de alojamiento aún no has podido arreglarlo, no lo dudes: regístrate en los foros PrestaShop y pregunta.

Con una comunidad de más de un millón de personas, seguro que el tema acaba en “[SOLUCIONADO]”, con la ayuda de los demás usuarios.

También están los planes de soporte oficiales de PrestaShop.

A través de ellos podrás ponerte en contacto con nosotros y uno de nuestros representantes te dará los detalles que necesitas para conseguir más ayuda.

5. Error 500 al importar un fichero CSV

Como ya sabes PrestaShop permite importar mediante un fichero separado por comas (CSV) una multitud de información:

  • Productos
  • Categorías
  • Clientes
  • Direcciones
  • Combinaciones
  • Fabricantes
  • Proveedores
  • Alias

En función del tamaño de este fichero y de los límites de nuestro Hosting es muy posible que la importación acabe en un error 500. En la mayoría de los casos este error se debe a la superación del tiempo máximo de espera definido en el servidor. En este caso podemos contactar nuestro hosting para subir ese tiempo de espera, aunque también puede ser debido a superar el tiempo máximo de ejecución y no todos los hosting permiten modificar este parámetro.

En este caso el módulo de importación de datos CSV nos ayudará a completar satisfactoriamente la importación ya que cada línea del fichero correrá en un hilo separado de PHP por lo que además de solventar el error 500 aumentará la velocidad de importación

Conclusiones

Ya te habíamos avisado al principio de este artículo que un error 500 o error interno del servidor no es tan terrible como parece. El único problema que encontramos con este error es la falta de información, es un error de lado del servidor que puede estar provocado por múltiples causas, por eso lo más importante es saber cómo poder diagnosticar el error 50, averiguar la causa del error es crucial para llegar a la solución.

Ahora ya sabes todo lo que hace falta para solucionar uno de los errores más temidos entre los usuarios de Internet.

¡Vuelve a poner a marcha tu tienda online con el software eCommerce PrestaShop y sigue vendiendo sin problemas!

Además puedes aprovechar y seguir subsanando errores como el error 404 generado por enlaces rotos.

Cada 2 semanas, nuestra newsletter e-commerce

Al enviar este formulario, acepto que PrestaShop S.A utilice los datos que he facilitado para el envío de boletines y ofertas promocionales. Puedes cancelar la suscripción en cualquier momento por medio del enlace que figura en los correos promocionales que recibes. Obtén más información sobre la gestión de tus datos y derechos.