Article ID: 120785, created on Mar 19, 2015, last review on Mar 19, 2015

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

Sintomi

  1. Un PHP secondario non funziona durante il passaggio della modalità PHP a fastcgi:

    # tailf /var/www/vhosts/domain.tld/logs/error_log
    
    (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
    Premature end of script headers: index.php
    
  2. I registri di Apache mostrano un errore della memoria:

    less /etc/httpd/logs/error_log
    
    Apache/2.2.15 (Unix) DAV/2 mod_fcgid/2.3.7 mod_python/3.3.1 Python/2.6.6 mod_ssl/2.2.15 OpenSSL/1.0.0-fips SVN/1.6.11 mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations 
    [Errno 12] Cannot allocate memory 
    
  3. Il registro Suexec mostra un errore:

    # tailf /var/log/httpd/suexec_log
    
    uid: (10033/ftpuser) gid: (504/504) cmd: cgi_wrapper
    unknown error in docroot check (10033)
    

Causa

1) PHP non è compilato con fastcgi.

2) Non c'è memoria sufficiente sul server.

3) Il php.ini del dominio è personalizzato, contiene errori di battitura o la configurazione non è valida.

4) I permessi sul file /etc/passwd non sono validi.

Risoluzione

1) Accertati che PHP sia compilato con fastcgi.È possibile usare il comando sotto per verificare se il modulo fastcgi è o non è abilitato.

    [root@vps-1018770-1735 ~]# /usr/local/psa/admin/bin/php_handlers_control --list
    id:  display name:  version:    type:                                     cgi-bin:                php.ini:
    fastcgi-5.2.17         5.2.17    5.2.17      cgi  /usr/local/pachosting/php5.2.17/bin/php-cgi  /usr/local/lib/php.ini

Controlla la versione PHP:

    # /usr/local/php5.2.17-cgi/bin/php-cgi -v
    PHP 5.2.17 (cgi) (built: Mar 27 2014 20:28:44)
    Copyright (c) 1997-2010 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

Come vedi, mostra 5.2.17 (cgi). Significa che PHP funziona unicamente in modalità CGI. Il PHP che funziona nelle modalità CGI e FastCGI ha l'aspetto seguente:

    # php-cgi -v
    PHP 5.3.3 (cgi-fcgi) (built: Jul 12 2013 20:34:01)
    Copyright (c) 1997-2010 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
        with the ionCube PHP Loader v4.2.2, Copyright (c) 2002-2012, by ionCube Ltd.

Se PHP non è compilato con la modalità FastCGI, ricompila il php personalizzato con l'opzione "--enable-fastcgi".

2) Accertati che ci sia memoria sufficiente sul server mediante il comando:

    free -m

Se il server è un container virtuale, puoi verificare i limiti delle risorse con il comando:

    cat /proc/user_beancounters

3) Il php.ini del dominio può essere personalizzato manualmente e contenere un errore. Ad esempio:megabytes impostati in php.ini come 128MB invece di 128M.

Esegui il backup del dominio originale php.ini e riconfigura un dominio:

 mv  /var/www/vhosts/domain.tld/etc/php.ini /var/www/vhosts/domain.tld/etc/php.ini_orig

 /usr/local/psa/admin/bin/httpdmng --reconfigure-vhost --vhost-name=domain.tld

Per Parallels Plesk Panel 11.5, usa il seguente comando:

 /usr/local/psa/admin/bin/httpdmng --reconfigure-domain domain.tld

4) Verifica i permessi per il file /etc/passwd. Il loro aspetto dovrebbe essere come segue:

    # ls -la /etc/passwd
    -rw-r--r-- 1 root root 7643 Mar  3 12:54 /etc/passwd

Se i permessi sono diversi, correggili nel modo sopra.

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

Email subscription for changes to this article
Save as PDF