Síntomas
No puedo instalar una aplicación del repositorio de aplicaciones {Dominios -> <nombre del dominio> -> Aplicaciones Web}. Aparece el siguiente error:ERROR: PleskFatalException
Create ShortcutCreate Shortcut
Up LevelUp Level
Method "cSiteApp::getMetadataReader" is not available for this type of package
0: /usr/local/psa/admin/plib/SiteApps/class.cSiteApp.php:565
cSiteApp->getMetadataReader()
1: /usr/local/psa/admin/plib/SiteApps/FusionSiteAppManager.php:461
FusionSiteAppManager->prepareScriptEnvVars(object of type SiteApp, array, array, array, array)
2: /usr/local/psa/admin/plib/SiteApps/FusionSiteAppManager.php:691
FusionSiteAppManager->uninstallSiteApp(object of type SiteApp, boolean false, boolean true)
3: /usr/local/psa/admin/plib/SiteApps/FusionSiteAppPackageManager.php:207
FusionSiteAppPackageManager->installSiteApp(object of type APSClientApplicationItem, string 'domain', integer '413', array, array, array, array, boolean false, array)
4: /usr/local/psa/admin/htdocs/siteapp/fusion_siteapp_install.php:501
Resolución
El problema ha sido corregido en Parallels Plesk Panel a partir de la versión 8.6.0.Adjunto a este artículo encontrará el hotfix para Parallels Plesk Panel 8.4.0. Para instalarlo, descargue el archivo y descomprímalo con unzip. Reemplace el archivo existente FusionSiteAppManager.php por el que ha descomprimido. Realice una copia de seguridad del archivo anterior. La ubicación del archivo es /usr/local/psa/admin/plib/SiteApps/FusionSiteAppManager.php para RedHat y /opt/psa/admin/plib/SiteApps/FusionSiteAppManager.php para Debian.
No olvide corregir la propiedas y los permisos, que deberían ser psaadm, 644.
Puede corregir los permisos ejecutando los comandos chown y chmod. Por ejemplo:
~# chown root:psaadm /usr/local/psa/admin/plib/SiteApps/FusionSiteAppManager.php
~# chmod 644 /usr/local/psa/admin/plib/SiteApps/FusionSiteAppManager.phpSi el error aparece en Parallels Plesk Panel 8.6.0 o 9.x, la causa puede ser unos permisos incorrectos en el directorio HTTPD_VHOSTS_D/domain.tld/vault_scripts o la opción 'umask' para el proceso 'init'.
El problema es que Apache no puede leer el archivo HTTPD_VHOSTS_D/domain.tld/vault_scripts/<application_name>/meta/APP-META.xml, por lo que la instalación no puede completarse y devuelve el error.
Compruebe que el directorio tiene los permisos correctos. Este debería ser propiedad de root:psacln y tener los permisos 755. Por ejemplo:
~# ls -ld /var/www/vhosts/domain.tld/vault_scripts
drwxr-xr-x 3 root psacln 4096 Aug 4 10:07 /var/www/vhosts/domain.tld/vault_scripts
~#Puede corregir los permisos emitiendo los comandos:
~# chown root:psacln /var/www/vhosts/domain.tld/vault_scripts
~# chmod 755 /var/www/vhosts/domain.tld/vault_scriptsPuede seleccionar la opción 'umask' para el proceso 'init' ejecutando:
~# cat /etc/sysconfig/init | grep ^umask
umask 027
~#'UMASK' es la opción de permiso predeterminada que se aplica a sus archivos y directorios cuando estos son creados. Esta opción afecta a los permisos de los archivos creados para la instalación de aplicaciones de sitio y el servidor web Apache no puede acceder a estos archivos. Para solucionar el problema, cambie 'umask' a '022' y reinicie el servidor para que se propaguen los cambios (ya que el proceso 'init' sólo se inicia una vez en el inicio del servidor).