This page is hosted for free by zzz.com.ua, if you are owner of this page, you can remove this message and gain access to many additional features by upgrading your hosting to PRO or VIP for just 32.50 UAH.

Linux - Что и как

Не работает? Начинай читать инструкцию.

Как обновить php до php55 на CentOS-5 (6)

Обновление PHP 5.3 на CentOS 5 (6) до PHP 5.5, станет неизбежным, так как в один прекрасный момент, вам понадобиться установит новую CMS или скрипт. Так и у меня. Надо поставить osTicket. Он не поддерживает версии php5.3

Предлагаю ознакомиться с предложениями моих партнёров

В одной из своих статей, я писал Как обновить php-5.1 до php-5.3 в CentOS-5.11 И вот пришло время обновить php-53 до php-55.

Проверим какие php пакеты установлены в системе и посмотрим результат

rpm -qa | grep php

Результат будет примерно такой:

php53-5.3.3-13.el5_8
php53-common-5.3.3-13.el5_8
php53-cli-5.3.3-13.el5_8
php53-mbstring-5.3.3-13.el5_8
php53-mcrypt-5.3.3-1.el5
php53-pdo-5.3.3-13.el5_8
php53-ldap-5.3.3-13.el5_8
php53-mysql-5.3.3-13.el5_8
php53-gd-5.3.3-13.el5_8
php53-imap-5.3.3-13.el5_8
php53-php-gettext-1.0.11-3.el5.noarch
php-pear-db-1.7.13-2.el5.rf
php-pear-1.4.9-8.el5

Возможно были и другие пакеты, но так сложилось, что я не помню какие пакеты php53 стояли. Для обновления лучше поставить все пакеты, что у вас есть сейчас, но новой версии php55. Остался главный вопрос, откуда обновить PHP-5.3 на CentOS 5 (6) до PHP-5.5 ?

Добавьте репозиторий если у вас CentOS 5.x

rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

Репозиторий для CentOS 6.x:

rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm

В /etc/yum.repos.d/webtatic-archive.repo - разрешите для обновления (enabled=1)

Теперь можно посмотреть какие пакеты php55w доступны

yum list available | grep php

или для определённой версии

yum list available | grep php55

Если там есть всё что вам надо, удалите старую версию php не учитывая зависимости ( --nodeps)

rpm -e php53-pdo php53-php-gettext php53-gd php53-process php53-mcrypt php53 php53-devel php53-odbc php53-dba php53-ldap php53-common php53-mbstring php53-xml php53-mysql php53-imap php53-xmlrpc php53-soap php53-pgsql php53-cli php53-bcmath php53-snmp php-pear --nodeps

Примечание: пакет php-pear-db-1.7.13-2.el5.rf я оставил, так как его не было в php55w

После этого можно установить новые. Так как мне нужно было поставить osTicket, я доставил пакеты php55w, которых раньше не было. 

yum install php55w-cli php55w-pdo php55w-ldap php55w-xml php55w-bcmath php55w-common php55w-process php55w-gd php55w-dba php55w-intl php55w-mysql php55w-pear php-php-gettext php55w-mbstring php55w-imap php55w-mcrypt php55w-opcache php55w-odbc php55w-pecl-apcu php55w-snmp php55w-pgsql php55w-5.5.38 php55w-soap php55w-xmlrpc php55w-devel

Возможно нужно будет доставить зависимости, которых нету в репах (pcre-devel-6.6-9.el5.i386.rpm или что то ещё),  то найдите пакет на установочном диске с CentOS, и установите, потом повторите попытку.

Так как в php55w не было пакета php-gettext доставил этот:

yum install php-php-gettext-1.0.12-1.el5

Отредактируйте /etc/php.ini

Обязательно
date.timezone = Europe/Kiev

Для выполнения некоторых скриптов, в моём случае обязательно
short_open_tag = On

Необязательные мои изменения
upload_max_filesize = 16M
memory_limit = 256M
post_max_size = 32M

Теперь можно перезапустить web сервер

service httpd restart

Теперь можно посмотреть, какая версия установлена

[root@localhost~]# php -v
PHP 5.5.38 (cli) (built: Jul 21 2016 14:04:52)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
[root@localhost~]#

Проверим какие пакеты php55w стоят в системе:

[root@localhost~]#  rpm -qa | grep php
php55w-cli-5.5.38-1.w5
php55w-pdo-5.5.38-1.w5
php55w-ldap-5.5.38-1.w5
phpmyadmin-2.11.11.3-2.el5.rf
php55w-xml-5.5.38-1.w5
php55w-bcmath-5.5.38-1.w5
php-pear-db-1.7.13-2.el5.rf
php55w-common-5.5.38-1.w5
php55w-process-5.5.38-1.w5
php55w-gd-5.5.38-1.w5
php55w-dba-5.5.38-1.w5
php55w-intl-5.5.38-1.w5
php55w-mysql-5.5.38-1.w5
php55w-pear-1.10.1-1.w5
php-php-gettext-1.0.12-1.el5
php55w-mbstring-5.5.38-1.w5
php55w-imap-5.5.38-1.w5
php55w-mcrypt-5.5.38-1.w5
php55w-opcache-5.5.38-1.w5
php55w-odbc-5.5.38-1.w5
php55w-pecl-apcu-4.0.11-1.w5
php55w-snmp-5.5.38-1.w5
php55w-pgsql-5.5.38-1.w5
php55w-5.5.38-1.w5
php55w-soap-5.5.38-1.w5
php55w-xmlrpc-5.5.38-1.w5
php55w-devel-5.5.38-1.w5
[root@localhost~]#

После обновления PHP 5.3 до PHP 5.5 рекомендую проверить работоспособность всех скриптов. Хотя это лучше предвидеть заранее. После обновления у меня перестал работать веб-клиент squirrelmail. Но оно и к лучшему. Поставил и настроил веб-клиент roundcubemail

Предлагаю ознакомиться с предложениями моих партнёров