Назад | Перейти на главную страницу

Обновите Centos 5 до PHP 5.2 или 5.3 [рекомендуемый способ?]

Мы используем Zend Framework, и в версии 2 php 5.2 будет минимальным требованием. Нам нравится CentOS, и мы хотели бы продолжать ее использовать, но PHP 5.1 больше не подходит для разработки веб-приложений с помощью Zend framework.

Я нашел несколько ссылок на решения для обновления с помощью внешних репозиториев.

Рекомендуемый метод обновления PHP 5.1.6 до 5.2.x на CentOS 5.4

http://www.webtatic.com/blog/2009/05/installing-php-526-on-centos-5/

http://www.webtatic.com/blog/2009/06/php-530-on-centos-5/

Хотелось бы увидеть другое решение с использованием «официального»? Репозиторий CentOS, если таковой имеется.

Нам нужно только обновить PHP, остальная часть настройки CentOS в порядке. Однако для нас важно сохранить цикл YUM без изменений, используя обычные репозитории.

Короче говоря: можно ли обновить только PHP с помощью внешнего репо или иным образом? При этом все еще безопасно обновляя все наши другие пакеты с помощью обычного использования yum?

Спасибо за вашу помощь!

Хотел бы я увидеть этот вопрос, когда его задали. Ты должен быть очень выборочно, из каких сторонних репозиториев вы устанавливаете пакеты. Многие из них не следуют передовым методам создания пакетов, а большинство не гарантирует, что имена пакетов не конфликтуют. Вы легко можете испортить вашу систему. Я дал следующий ответ в ответ на этот более свежий вопрос.


Я настоятельно рекомендую использовать Проект сообщества IUS репозитории для обновления вашего PHP 5.2 и даже пакетов PHP 5.3 на CentOS 5. Это набор очень хорошо поддерживаемых и высококачественных пакетов, используемых Rackspace и поддерживается, но не поддерживается ими (если, конечно, вы не клиент).

Инструкции по установке могут быть немного сложными, если вы новичок в этом. Вы ищете руководство по использованию клиента на их вики. Я продублирую инструкции здесь для удобства использования.

[root@linuxbox ~]# wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1.0-6.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

Это загружает и устанавливает оба EPEL и репозитории IUS для вас.

IUS обещает не использовать конфликтующие имена пакетов ни с одним из официальных репозиториев, включая EPEL (это отличная вещь), все не так просто, как yum upgrade php. Вам необходимо сначала удалить все существующие пакеты PHP и установить соответствующие из IUS. В качестве альтернативы вы можете использовать yum-plugin-replace плагин, чтобы добавить в YUM полезную возможность «замены».


Вручную

Первый:

[root@linuxbox ~]# rpm -qa | grep php

[root@linuxbox ~]# yum erase php
  • rpm -qa | grep php перечисляет каждый установленный пакет PHP. Вы будете использовать этот список для установки всех соответствующих индивидуальных пакетов PHP из IUS.
  • yum erase php команда просто стирает PHP и его зависимые пакеты

В заключение:

[root@linuxbox ~]# yum search php52

[root@linuxbox ~]# yum install php52 php52-common php52-pecl-apc php52-mysql ...
  • yum search php52 перечисляет доступные пакеты PHP 5.2
  • yum install устанавливает выбранные вами пакеты PHP 5.2. Вы можете использовать список, полученный на первом шаге, чтобы определить, что вам нужно

yum-plugin-replace

[root@linuxbox ~]# yum install yum-plugin-replace

[root@linuxbox ~]# yum replace php --replace-with php52

Это волшебным образом определит, какие пакеты PHP нужно удалить, и какие соответствующие пакеты php52 установить для вас.

Отличный Реми имеет самые последние сборки PHP для устаревших дистрибутивов - недавно я обновил Fedora 6 до PHP 5.3. После того, как вы установили ключ, как указано выше, вы можете установить PHP 5.3.1 вот так:

yum --enablerepo=remi update php-\*

Это не повлияет на обычное обновление / установку из стандартных репозиториев, так как remi является отдельным репо и не активен, за исключением этого единственного запроса.

есть много личных репо для php. просто убедитесь, что вы доверяете человеку, управляющему репо. Кроме того, убедитесь, что этот человек действительно управляет репо, а не создает один раз и забывает об этом ...

вот альтернативные способы:

A. атомное репо: http://www.atomicorp.com/wiki/index.php/PHP

B. Репозиторий для разработки и тестирования centos:

Есть много способов сделать это.

Официальный способ обновления до последней версии - репозиторий CentOS Developpement, доступный по адресу: http://dev.centos.org/centos/5/testing/x86_64/RPMS или путем его компиляции.

Если вам абсолютно необходимо установить версию 5.3 с помощью YUM, вам нужно будет использовать неподдерживаемый репозиторий. Лучшими известными мне репозиториями YUM являются следующие:
RPMForge
ART (Атомная ракетная черепаха)
Есть множество других, обслуживаемых одним или двумя людьми, которых вы найдете вокруг. Просто убедитесь, что вы обновляете только пакеты php.

Я использую Zend Server Community Edition. У него есть репозиторий YUM: http://files.zend.com/help/Zend-Server/rpm_installation.htm