Article ID: 123027, created on Mar 10, 2015, last review on Mar 10, 2015

  • Applies to:
  • Plesk 12.0 for Linux
  • Plesk 11.5 for Linux

Síntomas

El servicio de webmail de Horde no funciona tras la actualización a PHP 5.4.33:

  • El proceso de inicio de sesión es lento.
  • Los emails no se muestran y a veces se obtiene el error "Mail server closed the connection unexpectedly" cuando se inicia sesión.
  • Una vez iniciada la sesión y tras haber hecho clic en el enlace "Email", la página no se carga. En su lugar, y tras una larga demora, los usuarios se redireccionan a la página de inicio de sesión y obtienen un mensaje de error. El archivo error_log del servidor web contiene lo siguiente:

    Call to a member function getUid() on a non-object in /usr/share/psa-pear/pear/php/Horde/Imap/Client/Socket.php on line 1506
    

Causa

La causa de esta incidencia es un fallo de PHP, descrito aquí.

La versión afectada de PHP ha sido creada por Atomic e instalada a través de este repositorio. Las versiones de PHP presentes en otros repositorios también pueden verse afectadas por esta incidencia.

Resolución

Use uno de los métodos descritos a continuación para resolver la incidencia:

  • Realice una degradación a PHP 5.4.32:

    yum downgrade $(rpm -qa --qf "%{NAME}\n" | grep -v ioncube | grep ^php | awk '{print $1"-5.4.32"}') -y 
    
  • En el servicio de webmail de Horde, modifique temporalmente la configuración IMAP:

    1. Edite '/usr/share/psa-horde/imp/config/backends.php'.
    2. Reemplace 'secure' => 'tls' por 'secure' => 'none':

      // IMAP server
      $servers['imap'] = array(
          // ENABLED by default; will connect to IMAP port on local server
          'disabled' => false,
          'name' => 'IMAP Server',
          'hostspec' => 'localhost',
          'hordeauth' => false,
          'protocol' => 'imap',
          'port' => 143,
          // Plaintext logins are disabled by default on IMAP servers (see RFC 3501
          // [6.2.3]), so TLS is the only guaranteed authentication available by
          // default.
          'secure' => 'none',  // <------ this one was changed from 'tls' to 'none'
      );
      

a914db3fdc7a53ddcfd1b2db8f5a1b9c 56797cefb1efc9130f7c48a7d1db0f0c 01bc4c8cf5b7f01f815a7ada004154a2 29d1e90fd304f01e6420fbe60f66f838 0a53c5a9ca65a74d37ef5c5eaeb55d7f 2a5151f57629129e26ff206d171fbb5f e335d9adf7edffca6a8af8039031a4c7

Email subscription for changes to this article
Save as PDF