Ubuntu downgrader php 5.3 en 5.2
Ubuntu installe à présent par défaut php 5.3 qui n'est pas supporté par beaucoup de CMS (horde par exemple). qui donne ce genre de logs:
[Wed Dec 15 18:06:39 2010] [error] [client XXX:XXX:XXX:XXX] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/webmail/lib/Horde/Perms/sql.php on line 83
La façon de passer les variables dans le code a changé entre ces deux versions.
Voici la méthode pour remettre la version 5.2 de Ubuntu. C'est une traduction de ce billet PHP 5.2 on Ubuntu 10.04 Lucid Lynx
Configuration des sources de paquets
La première étape va consister à préciser au gestionnaire de paquets apt qu'on veut que pour php il reste en version 5.2 malgré les mises à jour. pour ça il faut mettre deux fichiers de configuration aux bons endroits:
cd /etc/apt/sources.list.d sudo wget http://randyfay.com/sites/default/files/karmic_0.list cd /etc/apt/preferences.d sudo wget http://randyfay.com/sites/default/files/php_1. sudo mv php_1. php
mettre à jour les paquets
sudo apt-get update
désinstaller php
sudo apt-get remove php5 libapache2-mod-php5 php5-xsl php5-gd php-pear php5-mysql php5-curl php5-memcache php5-imap
réinstaller php
sudo apt-get install php5 libapache2-mod-php5 php5-xsl php5-gd php-pear php5-mysql php5-curl php5-memcache php5-imap
normalement zou, le message d'erreur dans les logs devrait disparaitre... Merci à Julien pour son retour sur le tuto Horde de ce blog qui m'a permis d'apporter cette précision.