Trova il file php.ini corretto

147

Attualmente sto cercando di individuare il file php.ini corretto per modificarlo e riavviare apache in modo che le modifiche si verifichino e io vengo fermato.

Ho trovato tre file php.ini diversi (non so perché ce ne siano tre)  questo è il modo in cui ho trovato i file

$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini

Anch'io ho fatto ....

$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini

Li ho modificati tutti (per sicurezza) con le impostazioni che volevo.

Ho riavviato Apache usando

sudo service apache2 restart

I risultati ...

* Restarting web server apache2

Ho ricaricato la pagina e ha mostrato che il file php.ini non è stato aggiornato.

Lo so perché ho usato

echo ini_get('post_max_size');

Che doveva essere cambiato in 20M ma era ancora solo 2M

Ho provato a riavviare il mio computer pensando che forse avrebbe fermato il server Apache e ricaricato il file php.ini con l'impostazione corretta, ma purtroppo anche questo tentativo non è riuscito.

C'è qualche possibilità che possa esserci un altro file php.ini che potrebbe interferire?

    
posta Michael 12.10.2013 - 02:19

4 risposte

252

I tre file che hai sono tutti destinati a usi diversi.

/etc/php/5.6/cli/php.ini è per il programma CLI PHP, che hai trovato eseguendo php sul terminale.

/etc/php/5.6/cgi/php.ini è per il sistema php-cgi che non è specificamente utilizzato in questa configurazione.

/etc/php/5.6/apache2/php.ini è per il plugin PHP utilizzato da Apache. Questo è quello che devi modificare per applicare le modifiche alla configurazione di Apache.

/etc/php/5.6/fpm/php.ini è per il processore php5-fpm , che è un 'wrapper' compatibile con fastcgi per l'elaborazione di PHP (come passare da NGINX a php5-fpm ) e viene eseguito come processo autonomo sul sistema (a differenza il plugin PHP Apache)

  

Per le versioni di Ubuntu inferiori di 16.04, /etc/php/5.6/ , /etc/php/7.0/ , /etc/php/7.1/ e così via, vengono sostituiti da /etc/php5/ e così via. Altrimenti, questi percorsi rimangono accurati. Adegualo di conseguenza per il tuo ambiente, sostituendo il 5.6 o il numero con la cartella della versione effettiva esistente nel tuo ambiente.

    
risposta data Thomas Ward 12.10.2013 - 04:49
19

Prova a eseguire uno script contenente questo snippet nel tuo browser <?php phpinfo(); ?> , quindi prova a cercare qualcosa come File di configurazione caricato . Questa voce specifica php.ini utilizzati da PHP nel tuo server Apache.

    
risposta data Justin Paul Paño 05.11.2013 - 12:30
11

per php7 ubuntu 16.4

/etc/php/7.0/apache2/php.ini
    
risposta data Softmixt 21.08.2016 - 09:45
7

Per trovare quale php.ini utilizza la CLI puoi eseguire:

php -i | grep 'php.ini'

Esempio di output:

$ php -i | grep 'php.ini'

Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini
    
risposta data Gianfranco P. 27.06.2017 - 17:54

Leggi altre domande sui tag