Encuentra el archivo php.ini correcto

148

Actualmente estoy tratando de localizar el archivo php.ini correcto para editarlo y reiniciar apache para que los cambios se realicen y me quede perplejo.

He encontrado tres archivos php.ini diferentes (no tengo idea de por qué hay tres)  así es como encontré los archivos

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

También lo hice ...

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

Cambié todas (solo para estar seguro) a la configuración que quería.

reinicié Apache usando

sudo service apache2 restart

Los resultados ...

* Restarting web server apache2

Volví a cargar la página y mostró que el archivo php.ini no se actualizó.

Lo sé porque utilicé

echo ini_get('post_max_size');

que se suponía que debía cambiarse a 20M pero todavía era solo de 2M

Intenté reiniciar mi computadora pensando que eso podría detener el servidor apache y volver a cargar el archivo php.ini con la configuración correcta, pero lamentablemente ese intento también falló.

¿Hay alguna posibilidad de que haya otro archivo php.ini que podría estar interfiriendo?

    
pregunta Michael 12.10.2013 - 02:19

4 respuestas

254

Los tres archivos que tienes allí están diseñados para diferentes usos.

/etc/php/5.6/cli/php.ini es para el programa CLI PHP, que encontraste ejecutando php en el terminal.

/etc/php/5.6/cgi/php.ini es para el sistema php-cgi que no se usa específicamente en esta configuración.

/etc/php/5.6/apache2/php.ini es para el complemento PHP utilizado por Apache. Este es el que debe editar para que los cambios se apliquen a su configuración de Apache.

/etc/php/5.6/fpm/php.ini es para el procesador php5-fpm , que es un 'envoltorio' compatible con fastcgi para el procesamiento de PHP (por ejemplo, para transferir de NGINX a php5-fpm ) y se ejecuta como un proceso independiente en el sistema (a diferencia el plugin Apache PHP)

  

Para las versiones de Ubuntu inferiores de 16.04, /etc/php/5.6/ , /etc/php/7.0/ , /etc/php/7.1/ , y así sucesivamente, se reemplazan por /etc/php5/ y así sucesivamente. De lo contrario, estas rutas siguen siendo precisas. Adapte esto en consecuencia para su entorno, reemplazando el 5.6 o número con la carpeta de versión real que existe en su entorno.

    
respondido por el Thomas Ward 12.10.2013 - 04:49
19

Intente ejecutar un script que contenga este fragmento en su navegador <?php phpinfo(); ?> y luego intente buscar algo como Archivo de configuración cargada . Esta entrada especifica el php.ini que tu PHP usa en tu servidor Apache.

    
respondido por el Justin Paul Paño 05.11.2013 - 12:30
11

para php7 ubuntu 16.4

/etc/php/7.0/apache2/php.ini
    
respondido por el Softmixt 21.08.2016 - 09:45
7

Para buscar qué php.ini usa la CLI, puede ejecutar:

php -i | grep 'php.ini'

Ejemplo de salida:

$ 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
    
respondido por el Gianfranco P. 27.06.2017 - 17:54

Lea otras preguntas en las etiquetas