Multiple versiones de PHP

Descripción

Como hacer para correr diferentes versiones de PHP en un mismo equipo

Prerequistos

Un Linux Andando

Instalación

Para Centos

1.  Tiene que tener instalado epel y remi-safe andando

yum install yum-utils -y
yum install php54  php72 -y
yum install php54-php-fpm php72-php-fpm -y

2. Cambie el puerto

5.4 no se deja asi que cambiamos solo 72

sed -i 's/:9000/:9072/' /etc/opt/remi/php72/php-fpm.d/www.conf
systemctl stop php56-php-fpm
systemctl stop php72-php-fpm

3. Cree los ejecutables de CGI para cada php

cat > /var/www/cgi-bin/php72.fcgi « EOF
#!/bin/bash
exec /bin/php72-cgi
EOF

sudo chmod 755 /var/www/cgi-bin/php72.fcgi

4. La configuracion de apache

Cabien el php.conf por

ScriptAlias /cgi-bin/ “/var/www/cgi-bin/“
AddHandler php72-fcgi .php
Action php54-fcgi /cgi-bin/php54.fcgi
Action php72-fcgi /cgi-bin/php72.fcgi

OJO: cada version genera eun php-7.x.conf . desaparezcalas !!! Si no no van a tomar el .htacces

5. Cambie la configuracion de los directorios para que permitan el .htaccess


Alias /orfeo /var/www/html/orfeo-5.8

<Directory /var/www/html/orfeo-5.8>
    DirectoryIndex index.php
    Options FollowSymLinks MultiViews IncludesNoExec
    Options -Indexes
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

6. Ponga el htaccess donde lo necesita

echo “AddHandler php72-fcgi .php” > /var/www/html/php72/.htaccess

Nota: Tener presente que si en el servidor se está trabajando una versión de Orfeo él .htaccess debe apuntar a AddHandler php54-fcgi .php para que interprete correctamente las etiquetas de PHP de lo contrario va a causar conflicto.

7. Monte los paquetes que necesita para cada version

yum install php54-php-pgsql.x86_64 php72-php-pgsql.x86_64
yum install php54-php-ldap.x86_64 php72-php-ldap.x86_64
yum install php54-php-mssql.x86_64 php72-php-mssql.x86_64

8. Deje el servicio habilitado

systemctl enable php54-php-fpm
systemctl enable php72-php-fpm

Configuración

1. Una accion

2. Segunda accion

Trucos

Problemas

1. OJO con el tamaño del upload

Ahora no solo hay que subir en max_upload en php sino tambien en el fcgi

-  FcgidMaxRequestLen 2000000

Centos: /etc/httpd/conf.d/fcgi.conf
Debain: /etc/apache2/mods-enabled/fcgi.conf

https://www.howtoforge.com/apache2-mod_fcgid-http-request-length-exceeds-maxrequestlen

2 no toma la version de php de .htacces

OJO: cada version genera eun php-7.x.conf . desaparezcalas !!! Si no no van a tomar el .htacces

Referencias

- En CentOS 7 https://medium.com/@daniel.bui/multiple-php-version-with-apache-on-centos-7-17078c66692c
- Debian 8 y php5.3 https://superuser.com/questions/913792/php-5-3-10-on-debian-jessie - Debian 9 https://tecadmin.net/install-multiple-php-version-with-apache-on-debian/
- Ubuntu 22 https://techvblogs.com/blog/install-multiple-php-versions-on-ubuntu-22-04

- Compilando PHP  https://www.howtoforge.com/tutorial/how-to-install-php-7-on-debian/

- El PHP7.2 en debian wheezy

FIN


Advertencia

Este documento es privado y es de u so exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.


 

15-Marzo-2006 J.E.Gomez v1.0 Primera version

Volver arriba