Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

227
Views
¿Cómo puedo cambiar la versión de php-cli en Ubuntu 14.04?

Soy nuevo en el uso de Linux y rompí algunas configuraciones de php mientras manipulaba.

Si ejecuto un script php que contiene: phpinfo(); muestra las versiones de php como 5.6, pero a través de la línea de comando, si ejecuto php -v devuelve una versión de 7.0.

Quiero que ambas versiones coincidan.
¿Cómo puedo arreglar mi línea de comando PATH para usar también php 5.6?

over 4 years ago · Santiago Trujillo
7 answers
Answer question

0

sudo update-alternatives --set php /usr/bin/php5.6

Por favor vea: Fuente

over 4 years ago · Santiago Trujillo Report

0

Puede intentar establecer la ruta a la versión de php correcta en la línea de comando del terminal:

 set PATH="/usr/bin/php5.6/bin:$PATH"

Modifique la ruta para que coincida con su propia ruta a PHP 5.6 (es decir, si se instaló primero, podría ser algo como "/usr/bin/php").

El "$PATH" al final agrega el valor de la ruta actual, así que no olvide usarlo.

over 4 years ago · Santiago Trujillo Report

0

Esta explicación se basa en Ubuntu 16.04 pero se espera que funcione también para otras versiones

La mayoría de las respuestas aquí manipulan la versión php usando el comando

 sudo update-alternatives --set ...

Si bien el comando es bastante útil, nunca se explica qué hace exactamente. Aquí viene la explicación, incluyendo la copia de seguridad y algunas opciones:

Obtenga la información

  • El comando update-alternatives muestra o cambia los enlaces simbólicos que residen en una dirección alternativa que en Ubuntu generalmente se define como /etc/alternatives pero que también podría cambiarse.
  • se puede mostrar una lista completa de opciones relacionadas con update-alternatives con el comando update-alternatives --help , se puede mostrar una explicación más detallada con man update-alternatives .
  • Como el comando update-alternatives es el principal cambio de enlaces simbólicos en una carpeta especial, el contenido de esa carpeta también se puede mostrar con comandos comunes, siguiendo todos los elementos que comienzan con php :
 $ ls -al /etc/alternatives/php* lrwxrwxrwx 1 root root 15 Jan 19 02:58 /etc/alternatives/php -> /usr/bin/php7.2 lrwxrwxrwx 1 root root 31 Jan 19 02:58 /etc/alternatives/php.1.gz -> /usr/share/man/man1/php7.2.1.gz lrwxrwxrwx 1 root root 19 Jan 19 03:00 /etc/alternatives/php-cgi -> /usr/bin/php-cgi7.2 lrwxrwxrwx 1 root root 35 Jan 19 03:00 /etc/alternatives/php-cgi.1.gz -> /usr/share/man/man1/php-cgi7.2.1.gz lrwxrwxrwx 1 root root 23 Jan 19 03:00 /etc/alternatives/php-cgi-bin -> /usr/lib/cgi-bin/php7.2
  • para mostrar los elementos con el comando update-alternatives use este comando:
 $ update-alternatives --list php /usr/bin/php7.0 /usr/bin/php7.2
  • para mostrar más detalles puedes ejecutar esto:
 $ update-alternatives --display php php - auto mode link best version is /usr/bin/php7.2 link currently points to /usr/bin/php7.2 link php is /usr/bin/php slave php.1.gz is /usr/share/man/man1/php.1.gz /usr/bin/php7.0 - priority 70 slave php.1.gz: /usr/share/man/man1/php7.0.1.gz /usr/bin/php7.2 - priority 72 slave php.1.gz: /usr/share/man/man1/php7.2.1.gz

Finalmente, todavía queremos saber qué versiones de php podemos vincular. El siguiente comando muestra una lista de las versiones de php actualmente disponibles en /usr/bin/ :

 $ ls -al /usr/bin/php* lrwxrwxrwx 1 root root 21 Jan 1 19:47 /usr/bin/php -> /etc/alternatives/php -rwxr-xr-x 1 root root 4385840 Apr 5 18:13 /usr/bin/php7.0 -rwxr-xr-x 1 root root 4875488 Apr 5 18:10 /usr/bin/php7.2 lrwxrwxrwx 1 root root 25 Jan 1 19:47 /usr/bin/php-cgi -> /etc/alternatives/php-cgi -rwxr-xr-x 1 root root 4279672 Apr 5 18:13 /usr/bin/php-cgi7.0 -rwxr-xr-x 1 root root 4769272 Apr 5 18:10 /usr/bin/php-cgi7.2 -rwxr-xr-x 1 root root 663 Feb 29 2016 /usr/bin/phpunit

Copia de seguridad de la información

  • Para hacer una copia de seguridad informativa de estos enlaces simbólicos, simplemente guarde la lista en un archivo y guárdelo en su escritorio con este comando (ajuste el nombre de archivo alternatives-php.txt según sus necesidades):
 $ echo "command: update-alternatives --list php" > ~/Desktop/alternatives-php.txt $ update-alternatives --display php >> ~/Desktop/alternatives-php.txt $ echo "command: update-alternatives --display php" >> ~/Desktop/alternatives-php.txt $ update-alternatives --display php >> ~/Desktop/alternatives-php.txt

si lo desea, aún puede agregar el resultado del comando ls como se muestra arriba:

 $ echo "command: ls -al /etc/alternatives/php*" >> ~/Desktop/alternatives-php.txt $ ls -al /etc/alternatives/php* >> ~/Desktop/alternatives-php.txt

... y las versiones de PHP disponibles:

 $ echo "command: ls -al /usr/bin/php*" >> ~/Desktop/alternatives-php.txt $ ls -al /usr/bin/php* >> ~/Desktop/alternatives-php.txt

Cambiar la versión de PHP para la línea de comandos

  • Si filtramos primero el man -documenta la lista en /etc/alternatives/php*/ incluye 3 líneas:
 $ ls -al /etc/alternatives/php* lrwxrwxrwx 1 root root 15 Jan 19 02:58 /etc/alternatives/php -> /usr/bin/php7.2 lrwxrwxrwx 1 root root 19 Jan 19 03:00 /etc/alternatives/php-cgi -> /usr/bin/php-cgi7.2 lrwxrwxrwx 1 root root 23 Jan 19 03:00 /etc/alternatives/php-cgi-bin -> /usr/lib/cgi-bin/php7.2
  • Si bien, por un lado, podría ser útil tener enlaces consistentes para todo el sistema, por otro lado, el hecho de que ya existan varias versiones de php en el sistema implica que se usa para desarrollo y php para cli , web y cgi podría configurarse diferentemente.
    ¿Qué enlace simbólico hay que cambiar?
    PHP para web generalmente no se configura mediante el uso de enlaces simbólicos en /etc/alternatives y cli (línea de comando) generalmente no usa la versión cgi o la configuración cgi. Por lo tanto, se puede suponer que cambiar solo el enlace simbólico para php funcionará para la línea de comandos, probablemente no sea necesario cambiar php-cgi y php-cgi-bin . Por lo general, la versión más reciente está vinculada de manera predeterminada, por lo que el siguiente comando usa una versión anterior tomada de la lista en /usr/bin/ :
 $ sudo update-alternatives --set php /usr/bin/php7.0 update-alternatives: using /usr/bin/php7.0 to provide /usr/bin/php (php) in manual mode

Control

Comprobando el cambio:

 $: php -v PHP 7.0.29-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Apr 5 2018 08:34:50) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.0.29-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2017, by Zend Technologies

El cambio fue aceptado y la versión usada ahora es más antigua.

  • Ahora comprobamos la versión para la que está escrita la página de manual:
 $: man php ... [SCROLL DOWN] VERSION INFORMATION This manpage describes php, version 7.0.29-1+ubuntu16.04.1+deb.sury.org+1. COPYRIGHT ...

Esto significa que la versión de PHP es consistente con la página de manual y el comando man php devuelve las descripciones correctas para la versión de php actual y no se requieren ajustes manuales relacionados con la página de manual .

over 4 years ago · Santiago Trujillo Report

0

Aquí hay una forma más interactiva:

 update-alternatives --config php

Verás la lista de todas las versiones disponibles y seleccionarás una de ellas

over 4 years ago · Santiago Trujillo Report

0

Desde PHP 7.1 => PHP 5.6

 sudo update-alternatives --set php /usr/bin/php5.6

Desde PHP 5.6 => PHP 7.1

 sudo update-alternatives --set php /usr/bin/php7.1

Puedes cambiar las versiones como quieras.

Puedes consultar este tutorial

¡¡Saludos!!

over 4 years ago · Santiago Trujillo Report

0

revisa lo que tienes antes de cambiar

 php -v

cambiar todo a php 7.2

 sudo update-alternatives --set php /usr/bin/php7.2 sudo update-alternatives --set phar /usr/bin/phar7.2 sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.2 sudo update-alternatives --set phpize /usr/bin/phpize7.2 sudo update-alternatives --set php-config /usr/bin/php-config7.2
over 4 years ago · Santiago Trujillo Report

0

Plesk

Solo para decir, si su servidor se administra con Plesk (como el mío en el momento de buscar en esta pregunta), es posible que no tenga versiones posteriores de PHP en /usr/bin

En este caso, sus versiones de PHP se ubicarán en /opt/plesk/php , por lo que puede usar el siguiente comando como superusuario (ejecute su primero si no es un superusuario) para configurar su versión PHP CLI (para 7.3 en este ejemplo):

 echo "alias php='/opt/plesk/php/7.3/bin/php'" >> ~/.bashrc

Cierra la sesión y vuelve a iniciarla y... ¡listo!

notas

  1. Debe tener privilegios de superusuario para ejecutar esto
  2. Si desea configurar la CLI a una versión diferente, simplemente reemplace el 7.3 en el comando a la versión que desee (en el caso del OP, sería 5.6
  3. Si desea comprobar qué versiones de Plesk tiene disponibles para su uso, simplemente ejecute: ls /opt/plesk/php

Fuente: Soporte de Plesk

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!