X

Error 500 en Woocommerce

Si bien WordPress está pensado para montar blogs de forma fácil, hoy en día se puede transformar en una poderosa plataforma de comercio electrónico a través del plugin WooCommerce.

Este plugin permite unir las facilidades de WordPress con el mundo del comercio electrónico para crear una tienda online. WooCommerce también permite expandir funciones a través de extensiones lo que mejora las funcionalidades, pero aveces también multiplica los problemas.

Uno de los más comunes es el famoso error 500, que puede deberse a varias razones. Hoy analizaremos las causas y soluciones para el error 500 en Woocommerce.

Conocer el error

La mayoría de las veces el error 500 en WordPress es provocado por algún conflicto del servidor o sus configuraciones (muchas veces causadas por los mismos usuarios) que provoca un Fatal Error de PHP, por lo que el primer paso es obtener más información sobre este error.

Para hacer un debug de WordPress y conocer el error lo mejor, lo ideal es activar el valor display_errors del archivo php.ini. Si utilizas servidores de hosting profesional de Infranetworking lo puedes hacer fácilmente desde Editor de PHP de MultiPHP, donde debemos configurar la variable display_errors en On.

Si no utilizas ninguno de nuestros servidores  igualmente lo puedes hacer modificando el archivo php.ini de tu servidor web.

Los errores que mostrara son exclusivamente de PHP, puede deberse a diferentes motivos, nos podrá mostrar tres tipos de errores, los dos primeros son WarningNotice que son más bien alertas, que si bien lo mejor seria solucionarlos también no son los que provocan los errores 500.

Sin embargo son los Fatal Error son en los nos debemos concentrar, es en este último tipo los que provocan los errores 500 que estamos buscando.

Causas y soluciones al error 500 en Woocommerce

Veamos ahora cuáles son las causas más comunes por las cuales puede aparecer un error 500 en Woocommerce, junto con consejos para resolver cada una de ellas.

htaccess mal configurado

Si luego de activar la variable display_errors no se muestran errores de PHP y continua un error 500 es posible que el problema se encuentre en el archivo htaccess.

Hay varias razones por las que un htaccess puede provocar un error 500 como puede ser una sintaxis incorrecta, que algún plugin haya intentado manipularlo y haya fallado, no haya espacio suficiente cuando hubiera sido escrito, etc.

Normalmente los plugins de cache para Woocommerce son que van a modificar esto, aunque también los de seguridad, SEO y los de optimización pueden hacerlo. No es para nada extraño que entren en conflicto entre sí o con otro plugin instalado.

Para deshabilitar debemos dirigirnos por FTP o por cPanel y asegurarnos de que podemos ver los archivos ocultos, si estamos en cPanel debemos ingresar a la carpeta que tengamos el index.php de WordPress, ir a Configuración y luego a Mostrar archivos ocultos tal como se muestra en la imagen.

Luego cuando encontremos el archivo .htaccess hacemos botón derecho y lo renombramos como .htaccess.bak

Paso siguiente es verificar si el sitio carga al menos la portada, al faltar el archivo .htaccess pueden haber algunos errores con los enlaces aunque la portada debería cargar.

Si esto soluciona el problema luego debemos regenerar el archivo .htaccess para ello accedemos al administrador de WordPress, Settings > Permalinks y guardamos los cambios.

Esto volverá a guardar que teníamos anteriormente en nuestro .htaccess y lo regenerará.

La configuración que hayan agregado los plugins debemos volver a realizarla por lo que debemos configurar nuevamente los plugins de Seguridad y Cache.

También debemos revisar la configuración de la versión de PHP que tengamos asignada luego de crear el archivo debido a que esta se escribe en el .htaccess, para eso debemos dirigirnos a Administrador MultiPHP y seleccionar la versión adecuada para nuestro WordPress.

Incompatibilidad con la versión de PHP

Es posible que la versión de PHP que se esté usando no sea compatible con el sitio por lo que PHP no va a poder reconocer la sintaxis de código.

Es muy común tener un plugin con alguna función descontinuada en PHP que versiones nuevas no reconocen o a la inversa, sintaxis que aparecieron recién en las últimas versiones que no son soportadas por versiones anteriores de PHP.

Si es un tema de incompatibilidad la lista de errores posibles es muy larga y variada, para solucionar este problema lo mejor seria conocer de PHP saber reconocer cuando PHP no reconoce código como válido.

El error más común es porque PHP en algún punto esperaba un ) o un ; y se encontró con alguna otra palabra que no reconoce y te lo muestra en el mensaje de error.

El camino es asegurarnos que versión de PHP necesita nuestro WordPress y los plugins que tengamos instalados y configurarla.

Si usas nuestros planes compartidos la mejor manera es desde el Administrador MultiPHP donde podrás elegir entre varias versiones de PHP, de no saber cual necesitas puedes probar todas hasta dar con la correcta.

Falta de Memoria

Otro error muy común en tiendas online hechas con Woocommerce es que PHP se quede sin memoria ya sea porque nuestro sitio creció, o porque tenemos muchos plugins instalados o simplemente porque tenemos un límite de memoria muy bajo asignado desde nuestro php.ini

Este error puede ocurrir siempre o puede darse aleatoriamente o cada vez que accedemos a una parte del sitio en particular, si por ejemplo si vemos un error que nos dice algo similar a esto:

Allowed memory size of xxxxxxx bytes exhausted

Significa que debemos revisar el valor de memory_limit de nuestro php.ini o  Editor INI MultiPHP. Este valor se expresa en MB y podemos subirlo, si ya tenemos un límite alto tal vez debas revisar los plugins, puede haber alguno que literalmente se está devorando la memoria del sitio.

Archivos que faltan

Hay muchas razones por las que un archivo puede faltar, tal vez lo borramos por error, tal vez algún plugin intento modificarlo o manipularlo, en tal caso debemos restaurar el archivo que falte. Lo podemos hacer desde un respaldo que tengamos o desde un copia de WordPress.

También puede darse el caso que nos quedamos sin espacio en el plan y los archivos no pudieron escribirse correctamente luego de una actualización.

En estos casos lo mejor es contar con un respaldo previo, para eso te aconsejo contar con nuestro Nuevo sistema de Backup Premium y dormir tranquilo teniendo siempre un respaldo de todos tus archivos y bases de datos de WordPress/Woocommerce.

Error de sintaxis

Este tipo de error puede estar emparentado con la incompatibilidad de PHP que vimos en primero aunque puede deberse a una actualización fallida que provoca que el archivo esté incompleto, que hayamos sufrido una infección de malware o que un plugin haya intentado modificar un archivo y haya fallado.

Este tipo de error siempre indica la ruta del archivo con el error, para solucionarlo si tenemos conocimientos de desarrollo PHP podemos intentar remediar el error corrigiendo el código, si se trata de un plugin podemos desactivarlo o podemos recurrir a un respaldo.

Funciones duplicadas

Este es un error bastante común con los plugins, sobre todo cuando se actualiza el plugin y escribe en una carpeta nueva sin eliminar la anterior.

En este caso la mejor manera es identificar cuál de las dos versiones es la más vieja y renombrar la carpeta dejando solamente la más nueva o desinstalando el plugin.

Posteriormente lo que se hace es eliminar cualquier rastro a través de FTP o el Administrador de Archivos de cPanel y luego volver a instalar el plugin.

Deshabilitar plugins

Si aún no podemos encontrar el plugin en particular podemos llegar casos extremos podemos  tener que deshabilitar todos los plugins e ir activando los de a uno hasta encontrar el que produce el error.

Si no tenemos acceso al panel de administración de WordPress aún podemos hacerlo a través del servidor FTP o del Administrador de Archivos de cPanel.

Por cualquiera de los dos métodos ingresamos a wp-content/plugins/ y dentro encontraremos una carpeta por cada plugin que tengamos instalado, entonces vamos carpeta por carpeta renombrando por ejemplo con un guion bajo al final, al renombrarla el plugin quedará deshabilitado.

A medida que vamos deshabilitando plugins podemos ir probando si el sitio carga, si lo hace ya habremos encontrado el plugin que ocasiona el error 500 y lo dejaremos renombrado y volvemos a colocar el nombre original en el resto

Firewall bloqueando conexiones

El plugin de WooCommerce y sus extensiones habitualmente interactúan con otros servicios como pueden ser portales de venta, de anuncios, pasarelas de pago, etc.

Debemos asegurarnos el hosting este permita las conexiones salientes a través de su firewall de sistema, que la librería CURL esté activada por defecto para que nuestro sitio pueda establecer conexiones hacia y desde el puerto 80/443.

Si todos los pasos anteriores fallaron lo mejor es solicitar al servicio de hosting que deshabilite el firewall para hacer pruebas.

Existen plugins que no son capaces de manejar la posibilidad que la conexión falle y provocan un error 500 en Woocommerce al no poderse conectar cuando las IP de destino están bloqueadas por el firewall, o directamente hay un filtro de salida hacia otros servidores.

Resumiendo

Como vimos las razones para que WordPress y WooCommerce den error pueden ser muchas, así también las soluciones pueden ser variadas. Aquí solamente hemos mencionado los problemas más habituales y los respectivos caminos para solucionarlos.

Si bien WordPress ofrece una natural integración con PHP, lo que he la permitido añadir funciones de e-commerce con muchos plugins como Woocommerce, también al conectar tantas tecnologías en una sola plataforma, muchas veces suele aparecer el error 500 como forma inevitable de anunciar que algo está mal configurado.

Si el error se te hace esquivo y aun luego de probar todo esto no logras dar con la solución,  recuerda que desde el área de clientes de Infranetworking puedes abrir un ticket al área de soporte técnico las 24 horas del día, nuestros técnicos te ayudarán con gusto.


¿Buscas Alojamiento Web para Woocommerce?

 Mira nuestros Planes de Hosting WordPress

100% compatibles con Woocommerce.


Artículos relacionados