Je dois installer PHP 5.3 sur mon serveur Centos. Si je le fais yum install php
, le référentiel de base installe 5.1.6 qui est trop vieux pour les applications que j'ai besoin d'installer. Donc, j'ai essayé d'utiliser le [~ # ~ # ~ # ~ # ~] Repository, après les instructions officielles de IUS:
root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1-2.ius.el5.noarch.rpm
root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-1-1.ius.el5.noarch.rpm
root@linuxbox ~]# rpm -Uvh ius-release*.rpm epel-release*.rpm
D'ACCORD. Maintenant je fais tout simplement yum install php53
, etc. Pour tout ce dont j'ai besoin ... Mais je reçois cette erreur:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Check Error:
file /usr/bin/php from install of php53u-cli-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-cli-5.1.6-27.el5_5.3.x86_64
file /usr/bin/php-cgi from install of php53u-cli-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-cli-5.1.6-27.el5_5.3.x86_64
file /usr/share/man/man1/php.1.gz from install of php53u-cli-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-cli-5.1.6-27.el5_5.3.x86_64
file /etc/php.ini from install of php53u-common-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-common-5.1.6-27.el5_5.3.x86_64
Error Summary
-------------
Je n'ai aucune idée de la façon de résoudre ce problème. Je pense que je dois supprimer les paquets de base. Cependant, comme quelqu'un de nouveau à Linux, je ne sais pas comment faire ça.
Mise à jour : Apparemment Rhel 5.6 Inclus PHP 5. , il apparaît donc de manière nativement Pour Centos bientôt.
file /usr/bin/php from install of php53u-cli-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-cli-5.1.6-27.el5_5.3.x86_64
file /usr/bin/php-cgi from install of php53u-cli-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-cli-5.1.6-27.el5_5.3.x86_64
file /usr/share/man/man1/php.1.gz from install of php53u-cli-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-cli-5.1.6-27.el5_5.3.x86_64
file /etc/php.ini from install of php53u-common-5.3.4-3.ius.el5.x86_64 conflicts with file from package php-common-5.1.6-27.el5_5.3.x86_64
Le problème ici est que les packages que vous installez ont un nom différent (PHP53 au lieu de PHP), mais ils tentent d'installer les mêmes fichiers ... d'où les conflits. Ce n'est pas nécessairement le meilleur moyen de placer les paquets ensemble, mais je ne sais pas s'il y a de meilleurs forfaits disponibles, nous allons l'ignorer.
Pour supprimer vos packages actuellement installés:
# yum remove php-cli php-common php
Donc, en général, yum remove <list of packages>
retirera les paquets. Et bien sûr, yum list installed
Pour voir une liste des packages installés (ou rpm -qa
).
La réponse à cela a changé, à compter du 13 janvier 2011. Red Hat a publié la version 5.6, ce qui inclut PHP version 5.3 en tant que package distinct (php53
).
Vous devez retirer l'ancien PHP et ensuite installer PHP 5.3 séparément. Cela semble similaire à votre colis du référentiel IUS, mais maintenant c'est officiel.
Pour plus d'informations, voir les notes de version de Red Hat .
Notez que ceci est juste à partir de Red Hat, et il y aura un peu de retard avant que cela soit disponible dans Centos. La mise à jour RHEL 5.6 semble relativement mineure, cependant, je ne devrais donc pas m'attendre à ce qu'elle soit trop longue.
Essayez de supprimer les anciennes versions des colis avant d'installer les nouveaux:
miam effacer php-cli php-comon
ensuite, essayez votre installation Yum.
AVERTISSEMENT: Regardez la liste des modifications que Yum veut faire avant de vous engager, de vous assurer que vous n'élevez pas d'autres forfaits importants.
Vous êtes correct, vous devez d'abord désinstaller les paquets PHP par défaut. Avant d'aller de l'avant, gardez à l'esprit que d'autres packages peuvent avoir des dépendances spécifiques sur les versions de base. Les chances sont, tout ira bien, mais juste être fabriqués pour que vous puissiez devoir répondre à d'autres préoccupations plus tard.
Vous devriez être capable de le faire en émettant
yum erase php-common php-cli
Suivi de votre
yum install php53
Centos 6 est maintenant disponible et comprend PHP 5.3:
php-cli
, php-common
et php-dev
Avec certaines dépendances, mais rien d'autre (MySQL, etc. n'était intact.)phpinfo
confirme que je suis en cours d'exécution PHP = Version 5.3.3.J'ai eu le même problème où "Yum Update PHP" me donnerait des erreurs de conflit.
Running "Yum Update" (Mettre à jour tout) a travaillé pour moi cependant. Donner ça un essai.
En outre, réalisez que si vous exécutez "Yum Effacer PHP" ou "Yum Supprimer PHP", il peut supprimer tous les colis qui dépendent de PHP ... ce qui inclurait probablement votre panneau de commande Plesk ou CPanel si vous avoir qui est installé. Si je ne me trompe pas, vous devriez réinstaller ceux qui pourraient être une douleur.
Je viens de résoudre ce problème après de nombreuses recherches, à savoir l'installation PHP 5.3.10 sur Centos 5.3. J'avais essayé d'utiliser plusieurs référentiels, y compris le Atomicorp Repo , mais ceci Broke Plesk
J'ai finalement trouvé que les étapes suivantes fonctionnent un régal, pensée que je partage.
[~ # ~] commence [~ # ~ ~]
Téléchargez et activez les référentiels REMI et EPEL
cd ~
wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm
vi /etc/yum.repos.d/remi.repo
Modifier "Enabled = 0" à "Activé = 1" sous la position "[REMI]"
Vous devez supprimer php-sqlite2 ou vous obtiendrez une erreur de dépendance
yum remove php-sqlite2
Mise à jour PHP à la dernière version 5.3.10 Dans ce cas
yum update php
Sauvegardez php.ini et activez la version nouvellement installée
mv /etc/php.ini /etc/php.ini.old
mv /etc/php.ini.rpmnew /etc/php.ini
Sauvegardez my.cnf et activez la version nouvellement installée
mv /etc/my.cnf /etc/my.cnf.old
mv /etc/my.cnf.rpmnew /etc/my.cnf
Installez la dernière version de l'extension IonCube
wget http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar -xvf ioncube_loaders_lin_x86-64.tar.gz
mv ioncube/* /usr/lib64/php/modules/
echo 'zend_extension=/usr/lib64/php/modules/ioncube_loader_lin_5.3.so' > /etc/php.d/ioncube-loader.ini
Vous devrez peut-être également installer des extensions PHP, dans ce cas, j'ai également besoin d'installer le SOAP Extension:
yum install php-soap
Redémarrer les services pour que les modifications prennent affectent
service mysqld restart
service httpd restart
[~ # ~] fait [~ # ~ # ~]
À votre santé; marque