вторник, 30 декабря 2014 г.

php 5.2 в конце 2014 года

До сих пор есть сайты, которые работают только под php 5.2, не выше. Почему не поправить их? Например, позиция владельца "я не буду платить, оно же работает!", а своих денег на программиста нет. Особенно если таких сайтов даже больше 10, а если счет идет на сотни и тысячи?
Или когда есть что-то кодированное (cms), тем же zend, и версия cms больше не на поддержке/той фирмы больше нет. Нужно переделывать сайт с нуля.
Надо ставить что требуется, и пусть официально оно уже не поддерживается...
Хотя и разработчики php тоже поступили по свински, серьёзно изменили некоторые вещи, сломав совместимость, но не стали делать 5.2-LTS версию. Лучи поноса в их сторону.

Отдельно хорошо было бы рассмотреть связку этих версий с ispmaanager, но пока нет возможности. В этом плане лучше всего работает система, где php только 1 версии.



1) debian wheezy + netangels
https://www.netangels.ru/support/cloud-vds/php5.2/
Ставится пакетами, не конфликтует с системным php, выбор версии через враппер. В целом всё хорошо.
cat >/etc/apt/sources.list.d/php52.repo <<EOF
deb http://noc.netangels.ru/debian unstable main
deb http://noc.netangels.ru/debian wheezy main
EOF

1.1) сборка
http://softnastroy.com/content/ustanovka-dopolnitelnyh-versiy-php-52-53-i-55-dlya-ispconfig-3-v-debian-wheezy-ch6.html
Обращаю внимание, что тут установка выполняется через make install без контроля системы пакетов, что в общем случае делают только полные ламеры, правильно всё-таки собирать пакеты, но для случая с 5.2 это не так сильно напрягает -- новых версий 5.2 уже выходить не будет, а удаление 5.2 будет только полной переустановкой системы с нуля.

1.2) wheezy+backport от lenny, который в dotdeb.
Учитывая, какой большой разрыв между этими версиями, проблем будет очень много, и ряд пакетов придется искать от lenny, ряд от squeeze, и что-то дособирать (openssl убрал ssl v2 и надо будет пересобрать несколько библиотек).

2) debian squeeze + backport от lenny
echo 'deb http://archive.debian.org/debian lenny main contrib non-free' >> /etc/apt.sources.d/lenny.list
Удаляем штатный php и ставим из ленни. Возможно, понадобится правка /etc/apt/preferences.
Минусы: насколько я знаю, там 5.2.6, что совсем старо. Хоть и с патчами от более свежих версий 5.2, но неизвестно когда перестали обновлять.

2.1) Версия от dotdeb.org (под lenny)
Более свежая версия, но всё-равно будет связана с lenny
http://habrahabr.ru/sandbox/56953/
http://unixblog.org.ua/php/debian-squeeze-install-downgrade-to-php-5-2-17/

3) debian squeeze + debian.pro репо.
echo "deb http://debian.pro/repos/php52-squeeze/ binary/" >> /etc/apt/sources.list && aptitude update
Пока живое, если использовать -- имеет смысл сделать клон.
Интересно тем, что ставится как php52 и можно держать сразу 2 версии php, переключая по необходимости
https://debian.pro/336

5) Centos 6 + mchost
Раньше был популярен atomic, но сейчас там последняя версия 5.4. Но не атомиком единым.
cat > /etc/yum.repos.d/mchost.repo <<EOF
baseurl=http://yum.mchost.ru/pub/php52/centos/6/x86_64/
enabled=1
gpgcheck=1
EOF

После этого в CentOS-Base в [base] и [updates] добавляем
exclude=php*

4) CentOS 5 + CentALT (centos.alt.ru)
Увы, там же под 6 версию центоса php были 5.3 и 5.5, что нам не нужно.
Официально уже около года мертв, но есть зеркало
http://mirror.neu.edu.cn/CentALT
Для корректной работы требует epel. Установка
cat > /etc/yum.repos.d/centalt.repo <<EOF
[CentALT]
name=CentALT Packages for Enterprise Linux 6 - $basearch
#baseurl=http://centos.alt.ru/repository/centos/$releasever/$basearch/
baseurl=http://mirror.neu.edu.cn/CentALT/$releasever/$basearch/
enabled=1 gpgcheck=0
EOF

Также возможно потребуется yum-priorities и выставить приоритеты репам или в base ветки - exclude=php*

Из плюсов -- версия из последних, 5.2.17-37. Ну и вообще было много полезного софта, но увы, 5 официально труп (EoL).

Линки
https://www.netangels.ru/support/cloud-vds/php5.2/
http://softnastroy.com/content/ustanovka-dopolnitelnyh-versiy-php-52-53-i-55-dlya-ispconfig-3-v-debian-wheezy-ch6.html
http://blog.ololo.cc/wheezy_php52
http://dino.ciuffetti.info/2013/03/how-to-install-php-52-on-squeeze/
http://habrahabr.ru/sandbox/56953/

Комментариев нет:

Отправить комментарий