Magento: Solución a error 500 Internal Server Error

Muchas veces mientras trasteamos en nuestro Magento nos aparece el dichoso Error 500 Internal Server Error. Hay veces que no nos queda mas, es un error interno del servidor por que parte del código choca con las directrices del mismo, y no te lo ejecuta, generalmente por la configuración (sobre todo de Google o Paypal), pero en Magento el 90 por ciento de las veces, es algo mas sencillo.

Magento: Solución a error 500 Internal Server Error

Puede ser que estemos intentando acceder a una sesión ya caducada, en cuyo caso se resuelve borrando var/cache y var/sessions y volviendo a entrar pero borrando todo lo que no sea la url de la tienda.

La otra opción mas común, es que se nos han desconfigurado (por no decir que los hemos desconfigurado nosotros) los permisos CHMOD. Esto se corrige asignando los permisos correctos a todos y cada uno de los archivos y carpetas de nuestra tienda Magento. Lo puedes hacer uno a uno, pero claro como Magento apenas tiene archivos, tus nietos pueden acabar tu labor. También hay programas FTP, como por ejemplo FileZilla que es gratuito, que si te pones en la carpeta superior, te cambia los permisos automáticamente de todo lo que tenga dentro, pero claro, también tarda lo suyo, aunque considerablemente menos, eso si también te chupa transferencia.

El script

Hace tiempo en un foro encontré un script, que he ido modificando y adaptando según actualizaban las versiones para mi propio magento, y me ha ido bastante bien. Solo había que editar la línea 83 para poner el path a nuestra tienda.

En la versión 1.1 le añadí otro script para eliminar todos esos archivos que de otra forma hacen que el peso de nuestro Magento crezca y crezca llenándonos el Hosting. También funciona a la perfección pero había mas cosas que editar, sin embargo iba a compartirlo con vosotros por que me parecía muy útil, sobre todo para neófitos en Magento, pero Magento ha sacado el Magento Cleanup Tool, que hace lo mismo, y está desarrollado por ellos. Por lo que seguro que va mejor que el mío, y además es tan sencillo como seguir estos tres pasos:

  1. Descargar Magento Cleanup Tool
  2. Descomprimir magento-cleanup.php en el directorio raíz donde tenemos instalado nuestro Magento
  3. Ejecutar el archivo magento-cleanup.php: http://tudominio.com/magento/magento-cleanup.php

Nota: en la versión 1.5 de Magento deberías editar magento-cleanup.php:

buscar la línea: 
  chmod("pear", 550);
  Reemplazar por:
  chmod("lib/PEAR", 550);

Esto haría las dos cosas que te he comentado. Ajustar los permisos a como deben estar, y borrar todos esos archivos innecesarios que se nos acumulan sobre todo si utilizas el Downloader, en cuyo caso recomiendo al acabar ejecutarlo también.

Acceso Shell

Esto se puede hacer por SSH muy rápido, pero claro la mayoría no tenéis acceso shell por lo que os he dado otra forma que esta entre medias. Aquí te muestro como resetear los permisos de vuestros archivos y directorios si PHP funciona a través de FastCGI, suPHP, or LSAP:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod 550 pear
chmod 550 mage #for magento 1.5+

Si PHP está funcionando como un módulo (DSO), deberás hacer esto:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod o+w var var/.htaccess includes includes/config.php app/etc
chmod 550 pear
chmod 550 mage #for magento 1.5+
chmod -R o+w media

Si estás usando una versión Pre 1.5, puedes utilizar esto:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod o+w var var/.htaccess app/etc
chmod 550 pear
chmod -R o+w media

Los comandos que os comento, obviamente deben ser ejecutados en el directorio raíz donde tengáis instalado Magento.

Si queréis podéis encontrar mas información en inglés en el Wiki de Magento.

Si nada de esto funciona haz una copia de tu .htaccess y sobreescríbelo con el de origen.

12 comentarios en “Magento: Solución a error 500 Internal Server Error”

  1. Muchas gracias resolví totalmente mi error 500 de magento con tus indicasiones

  2. hola, disculpa podrias ayudarme con este error me sale estas palabras
    Error 500
    CDbConnection failed to open the DB connection.
    se puede solucionar y si es asi gracias por la ayuda.

    1. Hola

      Aunque imagino que ya lo has resuelto el problema esta en los datos de la base de datos. Alguno esta mal puesto o lo pusiste en otro sitio que no era el adecuado.

      Salu2

Los comentarios están cerrados.

Scroll al inicio