Мы используем 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.2yum install
устанавливает выбранные вами пакеты PHP 5.2. Вы можете использовать список, полученный на первом шаге, чтобы определить, что вам нужно[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