¡Esta es una revisión vieja del documento!
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 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