Wednesday 4th April 2018

Cloud Servers Error en CloudServers EasyApache4 de cPanel

[08:00] El día de hoy se detectan varios clientes (sólo servicios cloudserver con cPanel) con error en la visualización de sus sitios, el error de Apache tiene relación a módulos del mismo con incompatibilidades o errores de sintaxis en algunos archivos de configuración de Apache.

Al investigar notamos que varios paquetes correspondientes a AeasyApache4 (EA4) de cPanel han sido actualizados, principalmente la versión de Apache ha cambiado de v2.4.29 a v2.4.33 (build: Apr 3 2018 13:20:21), lo que ha causado varios errores en los sitios web de los clientes que usan EA4, entre los errores detectados hasta el momento se destacan:

  • Error de sintaxis en archivos .htaccess (la nueva versión de Apache no permite comentarios)
  • Error de compatibilidad en algunos módulos de apache como "ea-apache24-mod_cloudflare"

Es importante destacar que el error es completamente responsabilidad de cPanel y su configuración interna de actualizaciones (En servicios propios como 'Pack todo listo' NO configuramos las actualizaciones automáticas), aún así hemos actualmente nos encontramos elaborando algún tipo de solución que pueda revertir o corregir los bugs generados por la actualización de EasyApache4.

[09:00] Se identifica el problema: Cpanel actualizó la versión de Apache, sin embargo no se actualizaron los paquetes que forman parte de EasyApache4, además posterior a la actualización de Apache de forma automática EasyApache4 comenzó a funcionar con el "profile default", en clientes que contratan nuestro servicio "Pack Todo Listo" instalamos un profile llamado "Todo_Listo" que contiene todas las configuraciones aprobadas por nuestro equipo técnico, el profile default carece de varios módulos que si tiene nuestro profile, además de esto los módulos personalizados que haya instalado el cliente posterior al servicio "Pack todo Listo" fueron desinstalados.

Elaboramos el siguiente fix para solucionar la mayoría de los problemas presentados:

yum update ea-* -y /usr/local/bin/ea_install_profile --install /etc/cpanel/ea4/profiles/custom/packtodolisto.json /usr/local/cpanel/bin/rebuild_phpconf --default=ea-php55 --ea-php55=suphp --ea-php56=suphp --ea-php70=suphp service httpd restart

Si después de aplicar el fix aun persisten los problemas de visualización en los sitios web hay que revisar el error en "/var/log/apache2/error_log", lo mas probable es que falte algún módulo personalizado, por ejemplo en muchos casos algunos clientes instalan el módulo llamado "ZendGuardLoader", en error log aparecería algo como esto:

Failed loading /usr/local/Zend/lib/Guard-6.0.0/php-5.4.x/ZendGuardLoader.so: /usr/local/Zend/lib/Guard-6.0.0/php-5.4.x/ZendGuardLoader.so: cannot open shared object file: No such file or directory

Para solucionarlo se debe ingresar al WHM del servidor, ingresar a EasyApache4, customizar el profile "Todo_Listo" y añadir el paquete "zendguard" en las versiones de php necesarias y reconstruir el profile desde el botón "Provision".

El paquete "zendguard" sólo es un ejemplo, se debe reemplazar por el nombre del paquete faltante.