Debido a la problemática actual al instalar versiones antiguas de PHP en Plesk, en esta guía aprenderás a instalar y registrar PHP 5.6 desde el Terminal en versiones Plesk Obsidian 18>
Problemática actual
Actualmente cuando contratamos un nuevo servidor nos encontramos con la problemática de que Plesk Obsidian no permite instalar versiones inferiores a PHP 7.
Cuando estamos migrando nuestras aplicaciones antiguas a un nuevo servidor, reescribir el código no es una alternativa, sea por unas u otras razones por lo que tendremos que recurrir a instalar una versión antigua de PHP y que funcione con nuestra aplicación.
Según la página de soporte de Plesk nos advierte con el siguiente mensaje:
¿Es posible instalar versiones PHP5> en versiones Plesk en Ubuntu/debian?
No, no es posible realizar una instalación vía instalador del Plesk. Tanto Debian como Ubuntu 18.04 sólo dan soporte a versiones PHP7> que sean compatibles con OpenSSL 1.1
A continuación aprenderemos a instalar una versión PHP 5.6 desde el terminal.
Instalación
Lo primero que vamos a hacer es instalar la versión de PHP que necesitamos. Desde la página de soporte de Plesk, se nos ofrece una guía paso a paso de como instalar versiones PHP5 descargadas. En nuestro caso vamos a instalar PHP desde un repositorio.
1 2 3 4 |
$ sudo apt-get install software-properties-common $ sudo add-apt-repository -y ppa:ondrej/php $ sudo apt-get update $ sudo apt-get install php5.6 |
Inicialmente estamos instalando el paquete software-propierties-common que nos permite administrar las fuentes de software de proveedores independientes. A continuación incluimos el respositorio donde PHP 5.6 está disponible, actualizamos el repositorio e instalamos la versión seleccionada.
Por supuesto el siguiente paso es instalar todas las extensiones que necesitemos. No os preocupéis si olvidáis alguna ya que se pueden instalar posteriormente sin problemas.
1 |
$ sudo apt-get install php5.6-gd php5.6-mysql php5.6-dom php5.6-cli php5.6-json php5.6-common php5.6-mbstring php5.6-opcache php5.6-readline php5.6-xsl php5.6-bcmath php5.6-mbstring php5.6-soap php5.6-xml php5.6-curl php5.6-zip |
Instalacion de PHP 5.6 CGI
Por razones de rendimiento Plesk necesita hacer uso de la tecnología CGI que hará de interfaz entre el servidor web y tus aplicaciones para generar todo el contenido dinámico. Para instalar el CGI de PHP5.6 ejecutamos:
1 |
$ sudo apt-get install php5.6-cgi |
Registrando PHP 5.6 en Plesk
El último paso es registrar la versión PHP para que Plesk la reconozca en su interfaz de administración
1 |
$ /usr/local/psa/bin/php_handler --add -displayname 5.6 -path /usr/bin/php-cgi5.6 -phpini /etc/php/5.6/apache2/php.ini -clipath /usr/bin/php5.6 -type fastcgi -id plesk-php56-fastcgi |
- -add Indica que estamos incluyendo un nuevo manejador de PHP.
- -displayname 5.6 será el nombre de la version php que queremos usar.
- -path /usr/bin/php-cgi5 localicación del binario de PHP CGI
- -phpini /etc/php/5.6/apache2/php.ini localización del fichero de configuración de php.ini
- -clipath /usr/bin/php5.6 localicación del binario de PHP5.6
- -type fastcgi es el manejador de la versión PHP5.6, puede ser CGI o FastCGI, seleccionamos el recomendado FastCGI.
- -id plesk-php56-fastcgi será el manejador de nuestra versión PHP5.6 ( es un parámetro opcional) y que podemos consultar usando el comando plesk bin php_handler –list
1 2 3 4 5 6 |
$ plesk bin php_handler --list id: display name full version version type cgi-bin php-cli php.ini custom status plesk-php73-fastcgi 7.3.21 7.3.21 7.3 fastcgi /opt/plesk/php/7.3/bin/php-cgi /opt/plesk/php/7.3/bin/php /opt/plesk/php/7.3/etc/php.ini true enabled plesk-php74-fastcgi 7.4.9 7.4.9 7.4 fastcgi /opt/plesk/php/7.4/bin/php-cgi /opt/plesk/php/7.4/bin/php /opt/plesk/php/7.4/etc/php.ini true enabled ...... plesk-php56-fastcgi 5.6 5.6.40 5.6 fastcgi /usr/bin/php-cgi5.6 /usr/bin/php5.6 /etc/php/5.6/apache2/php.ini true enabled |
Desde nuestro panel de control Plesk revisamos en «Configuracion» -> «php settings» que el modulo está correctamente activado.
Sino lo estuviera, reiniciamos apache si fuera necesario.
Podeís encontrar más información desde la página de soporte de Plesk:
https://support.plesk.com/hc/en-us/articles/115000497853-How-to-add-a-custom-PHP-version-
https://support.plesk.com/hc/en-us/articles/213930125-How-to-enable-or-disable-additional-PHP-version-available-in-Plesk-
https://support.plesk.com/hc/en-us/articles/115000769793-How-to-install-remove-additional-PHP-versions-provided-by-Plesk
Hola, el paso 3 no funciona porque ya no existe ese repositorio:
Err:11 http://ppa.launchpad.net/ondrej/php/ubuntu impish Release
404 Not Found [IP: 91.189.95.85 80]
¿Alguna alternativa?
Gracias, Antonio
Hola,
Si te refieres al incluir el repositorio, acabo de probar y funciona correctamente.
Podría ser un problema con la distro de Debian que estés usando.