Respuesta más corta
¡No entres en pánico! Si le preocupa qué versión de PHP está utilizando su servidor Apache, phpinfo()
siempre debe prestar atención a la salida de . El módulo PHP Apache y el binario de línea de comando PHP son dos cosas diferentes que no interfieren entre sí.
De hecho, puede compilar y cargar varias versiones de PHP que desea trabajar con Apache siempre que ajuste Apache para cargarlo correctamente. La interfaz de línea de comandos PHP nunca entrará en juego en el caso de que Apache analice páginas PHP.
La versión de línea de comando de PHP simplemente está ahí para tareas específicas de línea de comando y el módulo PHP para Apache nunca tocará, usará o necesitará eso.
Respuesta larga
Tú dices esto:
Quería saber qué php
versión estoy usando, así que escribí el script estándar:
phpinfo();
Lo que me da la versión de PHP 5.6.10- la versión correcta de PHP necesaria para mi aplicación. Cuando intenté en la terminal:
php -i or php -v
Me muestra la versión 5.3.2 de PHP que no necesito.
La versión de PHP disponible desde la línea de comandos no tiene nada que ver 100% con la versión de PHP cargada como módulo. Estas son cosas completamente separadas.
Entonces, si le preocupa qué versión de PHP está usando su aplicación web, si phpinfo()
muestra la versión 5.6.10 y eso es lo que desea / necesita, está 100% bien.
La versión de línea de comandos de PHP es un elemento del sistema completamente separado. Entonces, lo único que importa es la salida de phpinfo()
.
Si por alguna razón desea utilizar una versión diferente de PHP con Apache, todo lo que necesita hacer es instalar el módulo compilado de Apache PHP en algún lugar y agregar, o ajustar, esta línea en la configuración de Apache de su sistema:
LoadModule php5_module /path/to/php/and/the/module/for/apache2/libphp5.so
Y simplemente ajuste la ruta al libphp5.so
—que es lo que Apache usa para analizar PHP—, luego reinicie Apache y usted estará en el negocio.
Por ejemplo, en un momento tuve que compilar PHP versión 5.1.6 de la fuente (con soporte de biblioteca GD) para usar en una máquina Ubuntu 12.04 que ejecuta PHP 5.3.5. En el archivo de carga del módulo PHP del servidor aquí:
/etc/apache2/mods-available/php5.load
Tenía líneas como esta:
# LoadModule php5_module /usr/lib/apache2/modules/libphp535.so
LoadModule php5_module /usr/lib/apache2/modules/libphp516-gd.so
¿Observe cómo se comenta una línea libphp535.so
y la otra no libphp516-gd.so
se comenta? Lo que hice fue renombrar el libphp5.so
módulo Apache PHP 5.3.5 predeterminado libphp535.so
con el número de versión en el nombre para poder tenerlo allí como referencia y luego libphp516-gd.so
llamé al módulo PHP 5.1.6 (con soporte de biblioteca GD) para saber qué es eso también lo es. De esta manera, los tengo a mi disposición lado a lado en el sistema.
Y, como dije al principio, la versión de PHP utilizada en la línea de comandos no tiene absolutamente nada que ver con el módulo Apache PHP. Por lo tanto, puede tener cualquier cantidad de versiones diferentes de módulos Apache PHP en el sistema listas para usar; solo ajuste una configuración y reinicie Apache y debería estar todo en el negocio para usar cualquier versión de PHP que especificó que debería usar Apache.