¿En dónde está el archivo php.ini?

LinuxmacOSPHPWindows

Cada vez que trabajo con sistema operativo diferente o redacto un tutorial específico en un sistema, tengo que buscar el archivo php.ini para modificar su configuración. Este archivo puede estar localizado en diferentes directorios, dependiendo del sistema operativo con el que trabajes o del método que hayas seguido para instalar PHP.

A continuación veremos diferentes métodos de obtener la localización del archivo php.ini, además de ver también diferentes rutas específicas de dicho archivo en base a diferentes configuraciones.

Usa la función phpinfo()

El método más directo de obtener la localización consiste en crear un pequeño script en el que muestres el resultado de la función phpinfo() en el directorio de archivos de tu servidor:

<?php
  phpinfo();
?>

Cuando accedas a este archivo desde tu navegador, debes fijarte en la ruta que se muestra para la opción «Loaded Configuration File». Deberías ver algo así como /etc/php/7.3/apache2/php.ini, pero con tu versión de PHP. Este será el archivo php.ini que estás buscando. A modo de recomendación, pusa CTRL+F (Windows) o CMD+F (Mac) en tu navegador para buscar la opción más rápido.

Busca el archivo en la terminal

Siempre tienes la opción de usar la línea de comandos para buscar el archivo php.ini. Dependiendo de tu sistema operativo, tendrás que usar diferentes comandos:

  • Comando grep: Si usas la línea de comandos de Linux, la línea de comaindos de Mac, la terminal de Linux para Windows o también Git Bash, podrás usar el comando grep para buscar el archivo. Para ello, ejecuta el siguiente comando:
    php -i | grep "Loaded Configuration File"

    El resultado del comando debería ser algo así como lo siguiente, aunque con tu versión de PHP:

    Loaded Configuration File => /etc/php/7.3/cli/php.ini
  • Comando findstr: Si usas Windows, podrás usar el comando findstr, que solamente funcionará en la línea de comandos de Windows y que al igual que el comando grep de Linux, sirve para buscar contenidos en el interior de los archivos. Abre una ventana de símbolo del sistema y ejecuta el siguiente comando:
    php -i | findstr /c:"Loaded Configuration File"

    Debería mostrarse un resultado como el siguiente:

    Loaded Configuration File => C:\php\php7.3.12\php.ini

En cualquier caso, seguramente se muestren varios resultados para el archivo php.ini:

  • PHP CLI: Este archivo de configuración de PHP se mostrará en una ruta del estilo /etc/php/7.3/cli/php.ini, y los cambios en este archivo solamente afectarán a los scripts de PHP que se ejecuten desde la terminal, no a los que se ejecuten desde tu servidor.
  • Apache: Este archivo de configuración de PHP se mostrará en una ruta parecida a /etc/php/7.3/apache2/php.ini, y los cambios en este archivo afectarán al módulo de PHP de Apache. Si usas CentOS/RHEL, el servidor Apache también recibe el nombre de httpd.
  • Nginx / Apache PHP-FPM: Este archivo de configuración de PHP se mostrará en una ruta similar a /etc/php/7.3/fpm/php.ini, y los cambios que realices en él afectarán tanto a los scripts que se ejecuten desde Nginx como a los que se ejecuten desde Apache con PHP-FPM.

NOTA: Si has instalado PHP mediante algún panel de Hosting como CPanel o VestaCP o si usas alguna aplicación todo en uno como Wamp, MAMP o XAMPP, la localización de PHP podrá variar con respecto a los resultados de ejemplo que hemos visto, pero en cualquier caso, siempre se debería mostrar en los resultados.

Usa el comando locate

Si usas Linux, también puedes usar el comando locate. En caso de que no tengas este comando instalado, puedes instalarlo de alguno de estos modos:

  • CentOS/RHEL: sudo yum install mlocate
  • Debian/Ubuntu: sudo apt install mlocate

A continuación, ejecuta el siguiente comando para mostrar la lista de archivos de tu sistema que tienen el nombre de php.ini:

locate php.ini

Y esto ha sido todo.


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

Deja una respuesta

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”