Подготовка
#apt-get update
#apt-get install build-essential openssl libssl-dev openssl-blacklist openssl-blacklist-extra bison autoconf automake libtool re2c flex apache-prefork-dev
#apt-get install libxml2-dev libssl-dev libbz2-dev libcurl3-dev libdb5.1-dev libjpeg-dev libpng-dev libXpm-dev libfreetype6-dev libt1-dev libgmp3-dev libc-client-dev libldap2-dev libmcrypt-dev libmhash-dev freetds-dev libz-dev libmysqlclient15-dev ncurses-dev libpcre3-dev unixODBC-dev libsqlite-dev libaspell-dev libreadline6-dev librecode-dev libsnmp-dev libtidy-dev libxslt-dev libt1-dev
Вычистим наш текущий php, в любом случае если что-то не получится мы без проблем сможем его установить заново.
Итак удаляем текущую версию PHP:
#apt-get remove php5-gd php5-curl php5-common
#apt-get remove --purge php5*
#apt-get autoremove
После чего пошагово выполняем следующие команды в терминале:
#sudo -i
#wget http://in1.php.net/distributions/php-5.3.29.tar.bz2
#tar -xvf php-5.3.29.tar.bz2
#cd php-5.3.29
#./configure
#make
#make install
Вместо строки ./configure удобнее сделать следующее:
#vim php53.sh
Вставим в него строки:
./configure --with-config-file-path=/etc/php5/apache2 \
-with-pear=/usr/share/php \
-with-bz2=/usr \
-with-curl=/usr \
-with-gd \
-enable-calendar \
-enable-mbstring \
-enable-bcmath \
-enable-sockets \
-enable-zip \
-with-libxml-dir=/usr \
-with-mysqli \
-with-mysql \
-with-openssl\
-with-regex=php \
-with-zlib \
-with-apxs2
Сохраним и выполним
#sh php53.sh
а после этого снова
#make
#make install
Данный вариант сборки расчитан на работу модулем apache2. Иначе требуются другие параметры при сборке.
Не забудьте добавить в конфиг apache2 строку
AddType application/x-httpd-php .php
и активировать модуль командой
#a2enmod php5
Этот вариант замены можно применить для любой версии php.
Не забывайте что если установить php из репозитория, то все ваши труды будут потеряны.
Если нужно несколько версий php, то проще собирать с опцией prefix, в которой указать путь размещения.
Если у Вас возникнут какие-нибудь проблемы, задавайте вопросы в комментариях, будем разбираться.
Комментарии
А вот дальше то вы и не прочитали, осталось то всего две строки.
/php-5.3.29# php -v
PHP 5.3.29 (cli) (built: Feb 24 2016 00:26:47)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies
Но скрипт не срабатывает.Как апачи подсоеденить к зтой версии php?