Tuve que hacer una actualización de Debian dist en mi servidor ... en el proceso, PHP se actualizó a 5.4. Usamos ioncube que solo admite hasta 5.3 atm, y estoy teniendo problemas para encontrar la forma de bajar a 5.3 de 5.4. Alguien sabe como?
Tuve que hacer una actualización de Debian dist en mi servidor ... en el proceso, PHP se actualizó a 5.4. Usamos ioncube que solo admite hasta 5.3 atm, y estoy teniendo problemas para encontrar la forma de bajar a 5.3 de 5.4. Alguien sabe como?
Respuestas:
Ninguna de las soluciones anteriores funcionó para mí. Lo que sí funcionó fue fijar los paquetes necesarios al antiguo establo, como
Agregue lo siguiente a /etc/apt/sources.lst
deb http://ftp.us.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.us.debian.org/debian/ squeeze main contrib non-free
Crear
/etc/apt/preferences.d/preferences
Y agregue los paquetes que necesita degradados, como en mi caso
Package: php5*
Pin: release a=oldstable
Pin-Priority: 700
Package: libapache2-mod-php5
Pin: release a=oldstable
Pin-Priority: 700
Package: libapache2-mod-php5
Pin: release a=oldstable
Pin-Priority: 700
Package: php-pear
Pin: release a=oldstable
Pin-Priority: 700
Package: *
Pin: release a=stable
Pin-Priority: 600
Luego ejecuta los comandos
aptitude update
aptitude reinstall <necessary packages>
/etc/init.d/apache2 restart
Si desea saber qué paquetes necesita actualizar, simplemente ejecute:
dpkg -l|grep php|grep 5.4|awk '{print $2}'
deb http://archive.debian.org/debian squeeze main contrib non-free deb-src http://archive.debian.org/debian squeeze main contrib non-free
consulte wiki.debian.org/DebianSqueeze
Podría intentar esto, pero hágalo bajo su propio riesgo. No lo intenté yo mismo. ;)
apt-get remove php5
dpkg --force php5_5.3.3-7+squeeze8_all.deb
dpkg --set-selections PHP5 hold
La última línea para evitar la actualización a 5.4. Cuando estés listo para 5.4, ejecutadpkg --set-selections PHP5 install
IonCube para 5.4 está un poco alejado de lo que he leído.
dpkg: error: unknown force/refuse option 'php5_5.3.3-7+squeeze13_all.deb'
Puede instalar ambas versiones de php en paralelo, por ejemplo, PHP 5.5x y 5.3x, o incluso tres versiones de PHP en paralelo, por ejemplo, PHP 5.5x, 5.4x y 5.3x utilizando fastcgi.
1. Instalar Libs, fastCGI, git
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install libxml2 libxml2-dev libssl-dev
sudo apt-get install libcurl4-openssl-dev pkg-config
sudo apt-get install libcurl4-gnutls-dev libjpeg-dev libpng12-dev libmysqlclient-dev
sudo apt-get install git
cd /opt
sudo git clone https://github.com/cweiske/phpfarm
sudo apt-get install libapache2-mod-fastcgi apache2-mpm-worker apache2-suexec
sudo a2enmod actions fastcgi suexec
sudo service apache2 restart
2. Compile PHP y verifíquelo
cd /opt/phpfarm/src
sudo ./compile.sh 5.3.29
cd /opt/phpfarm/inst/bin
./php-5.3.29 --version
3. Configurar FastCGI
sudo mkdir /var/www/cgi-bin
cd /var/www/cgi-bin
sudo nano php-cgi-5.3.29
#!/bin/sh
PHPRC="/etc/php5/cgi/5.3.29/"
export PHPRC
PHP_FCGI_CHILDREN=3
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_MAX_REQUESTS
exec /opt/phpfarm/inst/bin/php-cgi-5.3.29
Haga este archivo ejecutable.
4. Crear un nuevo host virtual
Pon esto en tu host:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName fastcgidemo.dev
DocumentRoot /var/www/fastcgidemo
#php-cgi setup
#used for multiple php versions
FastCgiServer /var/www/cgi-bin/php-cgi-5.3.29
ScriptAlias /cgi-bin-php/ /var/www/cgi-bin/
<Directory "/var/www/fastcgidemo">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
AddHandler php-cgi .php
Action php-cgi /cgi-bin-php/php-cgi-5.3.29
<FilesMatch "\.php$">
SetHandler php-cgi
</FilesMatch>
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error_fastcgidemo.log
CustomLog ${APACHE_LOG_DIR}/access_fastcgidemo.log combined
</VirtualHost>
Agregue los dominios a / etc / hosts
127.0.0.1 fastcgidemo.dev
5. Prueba todo
Habilite el sitio y reinicie apache y cree un nuevo archivo con phpinfo () en / var / www / fastcgidemo para probar su configuración.
Vaya al navegador y escriba fastcgidemo.dev
¡Espero eso ayude!
Tutorial completo sobre:
http://www.jabommi.de/wiki/downgrade-php-5-5-to-5-3-ubuntu-14-with-multiple-php-versions/
Primero verifique qué versiones son compatibles con php5:
apt-cache showpkg php5
Aquí está el script que podría resultarle útil ( elimina PHP 5.4 e instala PHP 5.3 ):
sudo apt-get remove --purge `dpkg -l | grep php | grep -w 5.4 | awk '{print $2}' | xargs`
VERSION="php5_5.3.3-7+squeeze8_all" # CHANGES THIS WITH YOUR VERSION OF PACKAGE
sudo apt-get install php5=$VERSION php5-cli=$VERSION php5-common=$VERSION libapache2-mod-php5=$VERSION
sudo apt-get install php5=$VERSION php5-cli=$VERSION php5-common=$VERSION libapache2-mod-php5=$VERSION
sudo apt-get install php-pear=$VERSION php5-curl=$VERSION php5-gd=$VERSION php5-intl=$VERSION php5-mysql=$VERSION php5-pspell=$VERSION php5-recode=$VERSION php5-snmp=$VERSION php5-sqlite=$VERSION php5-tidy=$VERSION php5-xmlrpc=$VERSION php5-xsl=$VERSION
Donde las versiones disponibles puede verificar por comando: apt-cache showpkg php5
Después de la instalación, verifíquelo por comando: php --version
Tenga cuidado y no instale ningún otro paquete sin la versión del paquete especificada (como php5-xcache), de lo contrario, apt-get reemplazará su instancia de PHP con 5.4 nuevamente.
Para evitar que esto suceda, puede guardar estos paquetes.
Para retener paquetes con dpkg, puede ejecutar el siguiente comando:
echo "php5 hold" | sudo dpkg --set-selections
Para mantener todos los paquetes PHP, ejecute el siguiente comando:
dpkg --get-selections | grep ^php5 | sed s/install/hold/g | sudo dpkg --set-selections
El siguiente comando le mostrará el estado de mantenimiento de sus paquetes php:
sudo dpkg --get-selections | grep ^php
También puede guardar paquetes usando aptitude, por ejemplo:
sudo aptitude hold php5
Unhold:
sudo aptitude unhold php5
Vea también las mismas preguntas para Ubuntu, para algunas ideas más.
Primero miraría lo que he instalado
dpkg -l |grep php
luego desinstale cualquier php que sea el ejemplo de la versión 5.4 ...
apt-get remove libapache2-mod-php5 php-db php-pear php5 php5-cli php5-common
entonces necesita limpiar los archivos antiguos (no es necesario pero podría ayudar)
apt-get clean
luego como arriba editar y anclar
nano /etc/apt/preferences.d/preferences
si eso aún no funciona, repita esto, pero esta vez deshabilite los repositorios que dicen sibilancias y deje solo los sid. tú podrías
apt-get install --reinstall
Tuve que hacer una actualización completa a wheezy cambiando mis fuentes aptas a las fuentes wheezy. Desinstaló php, actualizó el sistema con las nuevas fuentes apt, instaló php ... todo está dorado.