Qué es un “http error 500” y cómo localizarlo y arreglarlo en nuestro sitio web o blog?


¿Has recibido algún mensaje HTTP error 500 (Internal Server Error) en tu sitio Web recientemente?

En ocasiones, al actualizar o instalar un nuevo plugin o plantilla tu WordPress, PrestaShop o el CMS que utilizas puede quedar peligrosamente “fuera de juego” por este problema.

Este tema es algo mucho más habitual de lo que tu te crees y una situación por la que ya hemos pasado muchos de mostros anteriormente en más de una ocasión.

Y, si has llegado hasta este tutorial, muy probablemente sea porque a ti también te esta pasando y no sabes qué es ni cómo se consigue arreglar este fallo.


Tranquilo, tras unos segundos de nerviosismo e incertidumbre, debo decirte que no tienes por qué temer, ya que hoy te contaremos de qué se trata exactamente un error 500 y cómo solucionar este “Internal Server Error” tu mismo.
¿Qué es el ERROR 500 “Internal Server Error”?

El llamado “error http 500” es un tipo de error del servidor Web, generalmente debido a asuntos de “PHP”. Es decir, que aparece cuando hacemos una consulta o solicitud al servidor, y éste es incapaz de completarla o responder.

Ahora es cuando me encantaría decirte que tan solo existe una causa y que, por lo tanto, es muy sencillo corregir este fallo… Pero, va a ser que no, son muchos los motivos que dan lugar a este problema.

Si analizamos este fallo, podemos encontrar motivos muy dispares por los que en nuestra pantalla aparezca el mensaje de “500 Internal Server Error”.

¿Por qué sucede y cómo puedo yo mismo poner solución a un “error http 500” para conseguir que mi sitio web vuelva a estar operativo?

Precisamente ese el tema de la guía de hoy. En este 120º post de invitado cuento nuevamente con la colaboración de mi amigo y profesor de Webescuela David Ayala, que gracias a su experiencia como webmaster, nos contará todo lo relacionado con dicho fallo.

David, además de mostrarnos varios motivos por los que puede presentarse en nuestro sitio este problema, también nos explicará algunas técnicas sobre cómo solucionar un error 500 en WordPress y PrestaShop.

¡Estoy seguro que tras leer este tutorial dejará de invadirte el pánico! Ahora, te invito a que juntos aprendamos a evitar que tu web sea afectada por este fallo tan común.

¿Cómo localizar un “http error 500” y cómo solucionarlo en nuestro sitio web o blog?

En este artículo te voy a hablar sobre el “temido” error 500. Y digo temido porque uno de sus principales problemas es que, cuando aparece, normalmente no tenemos ni idea de por qué lo ha hecho o de donde está ese fallo.

Por ello, te voy a contar cuáles son las principales causas por lo que esto sucede y, por supuesto, las mejores formas para solucionar este problema.

¿Cómo encuentro el motivo que ha provocado el “500 Internal Server Error”? Al no tratarse de un solo motivo concreto, lo más probable es que tengas que hacer de detective para descubrir dónde está el problema.

Es decir, normalmente tendrás que probar a través del infalible método de “prueba y error”, descartando una a una las posibles causas, porque ya te anticipo que el mensaje del fallo no te va a dar ningún tipo de información ni pistas.
¿Cuáles pueden ser las posibles causas del error 500? Mejores prácticas para darle solución


A continuación, quiero profundizar en las posibles causas del problema y también iré contándote cuál es la mejor forma de solucionarlo.
► Daño en el archivo .htaccess

Sin duda esta es la causa más común del http error 500, y es que es bastante frecuente que se nos cuele un fallo en la programación de este archivo sin darnos cuenta.


Por ejemplo, el archivo htaccess lo usamos mucho cuando trabajamos con redirecciones. Y por lo tanto, es posible que hayamos cometido algún fallo en la edición del mismo a la hora de introducir estas redirecciones.


Es por ello que, cuando tengas este problema, lo primero que debes hacer es “guardar una copia de seguridad de ese archivo” y, tras esto, insertar una copia antigua del fichero htaccess que tengas de tu web.

Cuando ya lo hayas hecho, recarga la página y, si ves que el problema ha desaparecido, es que efectivamente, el fallo se encuentra en este archivo. Si no, deberás seguir buscando la causa.

► Errores de escritura en PHP

Una programación mal hecha en php puede generar errores 500, el problema es ver quién se atreve a ponerse a revisar una a una todas las líneas de su programación, para encontrar dónde está exactamente el problema.

Lo mejor en estos casos es recurrir al “log de errores” de PHP, en el cual podremos revisar línea a línea los que encontremos en el mismo con fecha incluida.

De esta manera, podremos deducir cuál es exactamente el problema que estamos teniendo con nuestra programación.

► Versión php incompatible con la programación

Un problema muy clásico es el de la incompatibilidad de la versión de PHP instalada en el servidor con nuestra programación.

A veces ocurre que porque alguien te lo ha recomendado o porque directamente la empresa que gestiona tu servidor lo ha decidido así, actualizan la versión de PHP.

El problema viene aquí cuando tu programación utiliza funciones incompatibles con esa versión de PHP, ahí es cuando se pueden generar errores 500.

Por eso es importante saber si alguien ha actualizado la versión de PHP de tu servidor, antes de volverte loco buscando otras opciones.

► Memoria del Servidor agotada

Otro problema puede que se haya agotado por algún motivo la memoria de tu servidor.

Para comprobar si aquí está el fallo, deberás de aumentar el límite de memoria.

Hay dos opciones con las cuales puedes aumentar este límite:
La primera es mediante el archivo php.ini, en este deberás escribir lo siguiente: memory=64MB (en este caso le ponemos de límite 64MB).
La segunda opción es mediante el archivo htaccess, añadiendo la línea php_value memory_limit 64M (en este caso le ponemos de límite 64MB).

Si ves que el fallo se ha solucionado, es que este era el problema. Lo ideal será que te pongas en contacto con tu proveedor de hosting exponiéndoles el caso para que sean ellos quien te ayuden a descubrir cuál es el origen del problema.

► Permisos de archivos incorrectos

Tanto los archivos como los directorios de tu web tienen unos permisos, también conocidos como CHMOD, los cuales dan permisos de lectura, escritura y ejecución. Éstos se “traducen” de forma numérica con 3 dígitos.


Si estos permisos están mal asignados, se puede generar un “Internal Server Error”

Dependiendo de la función de cada fichero y directorio deberá de tener unos permisos diferentes, pero como norma general los archivos deberían tener permisos 644 y los directorios 755.

► Fallo de seguridad

Mod Security es un mod a nivel de servidor que nos ayuda a protegernos de posibles fallos de seguridad y, por lo tanto, de ataques de hackers.

Cuando mod security está activado en el servidor (que debería de estarlo), si usamos alguna función de programación que se considere insegura por mod security, nos saltará un http error 500.

Por lo tanto, en ese caso no es que estemos haciendo algo mal, simplemente es que nos ha bloqueado para evitar problemas.

Por experiencia en mi propio blog sé que, en estos casos, la solución es buscar qué parte de la programación es la considerada insegura, para cambiarlo por código seguro (para ello, necesitaremos un programador sí o sí).

Tras esto, el problema estará solucionado.
¿Cómo solucionar un “http error 500” en WordPress?


El error 500 en WordPress de nuevo puede ser debido a varios motivos. Pero no te preocupes, voy a explicarte cuáles son todos y cómo puedes solucionarlos.
1. Al cambiar el Theme

Si cambias el Theme de tu sitio y de pronto aparece un código http error 500 en WordPress, es muy posible que se deba a la instalación de ese nuevo theme.

¿Por qué? Puede haber varios motivos, como por ejemplo que esta nueva plantilla de WordPress esté mal creada y esté generando algún tipo de problema en la consulta.

Incluso es posible que el theme esté utilizando alguna función php que esté “limitada” en el servidor por motivos de seguridad.

Cuando ocurre esto, tenemos un grave problema, ya que no podemos acceder al wp-admin de nuestro WordPress para cambiar la plantilla por la antigua.

Lo que tenemos que hacer en este caso es acceder vía FTP a los archivos de nuestra web y, en la carpeta WP-CONTENT/THEMES, buscar la carpeta de nuestro theme.

Copiamos el nombre de esa carpeta del theme y lo eliminamos.

Tras esto, podemos coger cualquiera de los temas que vienen por defecto en WP y ponerle el nombre que hemos copiado del tema que daba fallo.


Con esto, lo que haremos es que nuestra web cargue con otro diferente que sí que funciona correctamente y ya podremos volver a acceder al “wp-admin” de nuestro site.
2. Al instalar un plugin

Algo también bastante frecuente es que aparezca el http error 500 a causa de conflictos entre plugins de tu página o tu propio blog en WordPress.

Solucionarlo es sencillo, pero a veces puede llevar un rato.

En muchas ocasiones, los plugins pueden tener fallos o incluso usar funciones restringidas o incompatibles con nuestro servidor.

Para poder solucionar este problema, tendremos que desactivar el plugin, pero si nuestra web nos da error 500 y no podemos entrar al wp-admin, no podremos hacerlo.

En ese caso, lo que haremos será acceder vía FTP a los archivos de nuestra web y acceder al directorio WP-CONTENT/PLUGINS y eliminaremos la carpeta de nuestro plugin.


Una vez eliminado el plugin, WP de manera automática deshabilitará el plugin y, por lo tanto, deberíamos de solventar el problema.

Sin embargo, si el problema persiste, quizá es que dos o más de tus plugins hayan comenzado a ser incompatibles entre ellos, lo cual puede ocurrir en algunas ocasiones con las actualizaciones de los mismos.

Para solucionar esto, lo mejor será que desactives todos ellos.

Si ves que el problema desaparece, es que has acertado con la causa del problema, pero ahora deberás ir activando uno a uno los plugins, para ver cuál era el que estaba causando los problemas.

De nuevo, si no podemos acceder a wp-admin, deberemos de renombrar o eliminar las carpetas de los plugins, para que WordPress los desactive.

3. Plugin que modifica el htaccess

Algunos plugins de nuestra web en WP modifican el archivo htaccess sin que nosotros seamos conscientes de ello.

Como he comentado antes, el fichero htaccess puede generar errores 500, por lo tanto, es importante tener una copia de seguridad del antiguo htaccess, o bien generar un nuevo htacess, para poder comprobar si éste es el fallo.
4. Para casos extremos

Para casos extremos en los que no encontremos cual es el problema podemos recurrir a reinstalarlo de nuevo y así comprobar si realmente el problema viene dado de ahí o si realmente es un problema externo al mismo.

Acuérdate de que debes dejar el fichero wp-config.php antiguo, que es donde están los datos de conexión con la base de datos de tu instalación de WP, algo esencial para que este funcione.

Si has descargado una versión más reciente de WP, también deberás de acceder vía navegador a “tuweb.com/wp-admin/upgrade.php”, para que así se actualice la parte de la base de datos correspondiente a la nueva versión.
¿Cómo solucionar el http error 500 en PrestaShop?


En primer lugar, lo primero que debemos de hacer en PrestaShop es activar el informe de errores que en muchos casos viene desactivado.

Tras crear tu tienda Online en PrestaShop, si utilizas una versión anterior a 1.5.2 deberás abrir el fichero CONFIG/CONFIG.INC.PHP y aproximadamente en la línea 28 encontrarás @ini_set(´display_errors´,´off´), deberás cambiar ese off por on.

Si utilizas una versión de PrestaShop superior a 1.5.3, deberás acceder al fichero CONFIG/DEFINES.INC.PHP y aproximadamente en la línea 28 encontrarás (´_PS_MODE_DEV_´,false), deberás cambiar ese false por true.

Tras haber realizado esto, ya podremos ver los fallos que nos lance en esa página en concreto y por lo tanto, podremos obtener una mayor información, de cara a detectar a qué se debe ese error 500 en PrestaShop.

También os voy a dar algunos consejos para descartar otros posibles problemas del error 500 en PrestaShop.

► Regenerando el archivo htaccess

Como he comentado anteriormente el archivo htaccess puede generar fallos de este tipo, por lo tanto, para asegurarnos que no viene el problema de ahí podemos hacer lo siguiente:
Accedemos a “Preferencias” y en “SEO&URL’s” y ahí cambiamos la opción de “URL’s amigables” a “NO” y guardamos cambios.
Volvemos a acceder y cambiamos de “NO” a “Sí” y volvemos a guardar. Esto hará que se regenere nuestro fichero htaccess de nuevo.

► Módulos obsoletos

Es posible que al actualizar nuestra tienda nos encontremos con módulos obsoletos del mismo o incluso que sean incompatibles con nuestra nueva versión de este CMS.

Esto puede llegar a generar errores 500 en nuestro PrestaShop, por lo tanto, en caso de que ocurra, tendremos que revisar módulo a módulo, para comprobar cuál es el que está generando el problema y, por lo tanto, desactivar y/o eliminar el causante del mismo.
¿Y si sigo sin encontrar el problema?

Si sigues sin encontrar el problema, te aconsejo que contactes con tu proveedor de hosting y les comentes tu situación, para ver si ellos pueden ayudarte con el problema.

Eso sí, te recomiendo que lo hagas lo antes posible, ya que como bien sabemos, no es nada positivo tener nuestra web “Offline” durante mucho tiempo, ni de cara a nuestros usuarios, ni de cara a Google.
Conclusión

Como has podido comprobar, que tu web genere un http error 500 es algo más común de lo que puede parecerte en un principio. Aún así, solucionarlo está al alcance de tu mano, si sigues todos estos consejos.

Tan sólo es cuestión de tener paciencia y actuar con rapidez, para que tu sitio Web esté el menor tiempo posible fuera de servicio y, por tanto, afecte en la menor medida posible al tráfico que puedas recibir.

TODO EN UNO.NET

Queremos darle a conocer nuestra EMPRESA creada en 1995. Todo En Uno.Net S.A.S es fundadora de la Organización Empresarial Todo En Uno.NET. Todo En Uno.Net S.A.S. es una empresa especializada en brindar CONSULTORIAS Y COMPAÑAMIENTO en el área tecnológica y administrativa basándonos en la última información tecnológica y de servicios del mercado, además prestamos una consultoría integral en varias áreas como son: CONSULTORIAS TECNOLOGICAS, CONSULTORIAS EMPRESARIALES, CONSULTORIA MERCADEO TECNOLÓGICO, CONSULTORIA EN TRATAMIENTO DE DATOS PERSONALES, Y con todos nuestros aliados en la organización TODO EN UNO.NET

Publicar un comentario

Esperamos sus comentarios

Artículo Anterior Artículo Siguiente