Deseamos proponerte la mejor información que encontramos por todo internet. Nosotros esperamos que te resulte de ayuda y si quieres compartir algo que nos pueda ayudar a mejorar siente la libertad de hacerlo..
Solución:
Si tiene este problema al actualizar de PHP5 a PHP7 en Ubuntu 14.04 con Apache, esto es lo que me ayudó (el crédito va aquí):
Deshabilite el módulo PHP5 en Apache:
sudo a2dismod php5
Ahora habilite PHP7:
sudo a2enmod php7.1
Para reflejar los cambios, se requiere reiniciar Apache:
sudo systemctl restart apache2
Respuesta más corta.
¡No entres en pánico! Si le preocupa qué versión de PHP está usando su servidor Apache, la salida de phpinfo()
es siempre a lo que debes prestar atención. El módulo PHP de Apache y el binario de la línea de comandos de PHP son dos cosas diferentes que no interfieren entre sí.
De hecho, puede compilar y cargar varias versiones de PHP que desee para trabajar con Apache, siempre y cuando ajuste Apache para cargarlo correctamente. La interfaz de línea de comandos de PHP nunca entrará en juego en el caso de que Apache analice páginas PHP.
La versión de línea de comandos de PHP simplemente está ahí para tareas específicas de la línea de comandos y el módulo PHP para Apache nunca tocará, usará o necesitará eso.
Respuesta más larga.
Tú dices esto:
queria saber cual
php
versión que estoy usando, así que escribí el script estándar:phpinfo();
Lo que me da la versión de PHP 5.6.10- el correcto Versión de PHP necesaria para mi aplicación. Cuando probé en la terminal:
php -i or php -v
Me muestra la versión de PHP 5.3.2 que no necesito.
La versión de PHP disponible desde la línea de comandos no tiene 100% nada que ver 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 quiere/necesita que está 100% bien.
La versión de línea de comandos de PHP es un elemento del sistema completamente separado. Así que lo único que importa es la salida de phpinfo()
.
Si por alguna razón quisiera usar una versión diferente de PHP con Apache, todo lo que necesita hacer es instalar el módulo PHP de Apache compilado 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 solo ajusta el camino a la libphp5.so
—que es lo que usa Apache para analizar PHP— luego reinicie Apache y estará en el negocio.
Por ejemplo, en un momento tuve que compilar la versión 5.1.6 de PHP desde el código fuente (con compatibilidad con la biblioteca GD) para usar en una máquina con Ubuntu 12.04 que ejecutaba 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 para libphp535.so
y el otro para libphp516-gd.so
esta sin comentar? Lo que hice fue cambiar el nombre del PHP predeterminado 5.3.5 libphp5.so
módulo apache para libphp535.so
con el número de versión en el nombre para poder tenerlo allí como referencia y luego nombrar el módulo PHP 5.1.6 (con soporte de biblioteca GD) libphp516-gd.so
así que sé lo que es eso también. De esta manera, los tengo a ambos disponibles uno al lado del otro en el sistema.
Y, como dije al principio, la versión 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 PHP de Apache en el sistema listas para usar; simplemente ajuste una configuración y reinicie Apache y debería estar listo para usar cualquier versión de PHP que haya especificado que debe usar Apache.
Si está intentando ejecutar código PHP desde su servidor web, entonces la versión que está utilizando es la que informa phpinfo()
= 5.6.10.
Aparentemente, su servidor tiene varias versiones de PHP instaladas, y cuando inicia sesión y ejecuta php
en la línea de comando, está obteniendo la versión anterior que está instalada en /usr/bin/php.
Un servidor puede tener muchas versiones de PHP, y el tuyo parece tenerlas.
Si necesita ejecutar manualmente el mismo PHP que su servidor web, entonces necesita encontrar la otra versión. Intenta ejecutar estos comandos:
/usr/local/bin/php -v
/opt/local/bin/php -v
/opt/bin/php -v
Uno de ellos podría revelar un PHP con la misma versión que su servidor web, y cuando descubra cuál es, puede usar ese en lugar del predeterminado.