Los cambios de php.ini no tienen ningún efecto

7

Cuando hago algún cambio en php.ini ubicado en / usr / local / lib en centos, los cambios no parecen aplicarse, por ejemplo, cuando borro todo el contenido de php.ini y reinicio Apache todo funciona bien. ..

Busqué php.ini y está en un lugar en el sistema ... ¿cuál es el problema? ¿Cómo puedo arreglar esto?

Fcoder
fuente
¿Cómo buscaste este archivo? ¿Qué comando usaste? ¿En qué caminos miraste?
Khaled
@Khaled busqué de esta manera: whereis php.ini
Fcoder
¿Cuántos php.ini tiene? (Por ejemplo, consulte con find / -name php.ini -print).
Hennes
Tratar find /etc -name php.ini.
Khaled
solo tengo uno en: /usr/local/lib/php.ini
Fcoder

Respuestas:

12

si no está seguro de qué php.ini se está utilizando, cree un nuevo archivo en su carpeta web, asígnele un nombre, phpinfo.phppor ejemplo, con el siguiente contenido

<?php
phpinfo();
?>

luego abra la url en su navegador ( http://www.example.com/phpinfo.php ). mostrará la ruta al php.ini que se está utilizando.

cuando haya identificado el archivo correcto, realice los cambios deseados y asegúrese de eliminar el inicio; en caso de que haya uno para activar la configuración.

reinicie apache y vuelva a cargar la página phpinfo, su configuración modificada ahora debería aparecer. si no es así, asegúrese de no tener un archivo .htaccess en su raíz web que anule la configuración de php.

Grifo
fuente
Hago esto y este es el resultado: Ruta del archivo de configuración (php.ini) / usr / local / lib Archivo de configuración cargado /usr/local/lib/php.ini
Fcoder
¿Qué valor trataste de cambiar? ¿eliminaste los principales ';' para activar la configuración?
Gryphius
¿No es ?>una buena práctica omitir la etiqueta final de php ?
Omar Tariq
2

Es posible que desee leer estos hilos:

pistas:

  1. ¿Qué es el "Archivo de configuración cargado" en la salida de php_info? -> comprueba que editas el archivo ini correcto.
  2. compruebe si hay varias ocurrencias de su configuración en el mismo archivo.
  3. La sugerencia de Gryphius tampoco es mala: ¡Descomenta la configuración! (elimine el ";" principal)
  4. Verifique los permisos en el archivo ini. El servidor web y php-cgi / php-fpm necesitan acceso de lectura.
  5. php 5 y posterior: no solo reinicie el servidor web, sino también el servicio php-fpm antes de realizar la prueba.
Titus
fuente
Acabo de cambiar a fast-cgi y reiniciar fpm funcionó, gracias.
Dave
1

Sigue esto:

Cree un archivo dentro de su raíz web nombrándolo como desee. Generalmente prefiero x.php

 # vim x.php

El contenido del archivo debe ser este:

<?php
phpinfo();
?>

Ahora abra este archivo en su navegador así:

http://server_ip/x.php

Esto le mostrará la ubicación del php.ini que está usando su apache. Edite ese php.ini y funcionará.

GeekRide
fuente
Hago esto y este es el resultado: Ruta del archivo de configuración (php.ini) / usr / local / lib Archivo de configuración cargado /usr/local/lib/php.ini
Fcoder
Eso significa que solo está utilizando este archivo. Cualquier cambio en este archivo se reflejará en Apache. Puede probar lo mismo con la misma URL. Realice algún cambio en alguna variable en este php.ini, y eso se reflejará en el archivo x.php en el navegador.
GeekRide
0

Es posible que tenga el archivo php.ini en su raíz web.

jahil
fuente
0

No puedo comentar aquí todavía, pero: ¿Funciona si mantiene los cambios y reinicia Apache?

Si es así, la razón probablemente sea que PHP se ejecuta como un módulo Apache.
Si desea que los cambios surtan efecto sin reiniciar el servidor web, use php-cgi en su lugar.

Esta página explica la instalación y configuración; busque en la página "como un módulo de Apache" o "PHP 5 como un binario CGI".

Titus
fuente