Установка php 5.3 на centos 5.8 не затрагивая рабочий php 5.2

Установка второй версии php на сервер

Собственно задача стояла на боевом сервере centos 5.8 php 5.2 запустить php 5.3 не затрагивая работы уже настроенных и запущенных программ.  

Заходим в каталог с которого будем ставить php
  • cd /home
Качаем пакет php 5.3 например тут
  • 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 --prefix=/opt/php53 --exec-prefix=/opt/php53 --with-config-file-path=/opt/php53 
--exec-prefix - Каталог в который будет устанавливаться php

--with-config-file-path - Устанавливает путь для поиска php.ini

У меня при установке несколько раз выдавало вот такую ошибку сборки
configure: error: xml2-config not found. Please check your libxml2 installation.
Решил так

1 cпособ:

Можно попробовать поставить из репозиториев
  • yum install libxml2-devel

2 cпособ:

Или другой способ, если в репозиторях нет

Пакет нашел тут ftp://xmlsoft.org/libxml2/

Правой кнопкой копируем путь к нужному rpm и с архитектурой нашей системы

Если что архитектуру посмотреть так

  • arch
x86_64

Установка (путь заменить на свой скопированный)

  • yum install ftp://xmlsoft.org/libxml2/libxml2-2.7.2-1.x86_64.rpm

3 cпособ:

Или скомпилировать из исходников

Качаем архив (путь заменить на свой скопированный)

  • wget  ftp://xmlsoft.org/libxml2/libxml2-2.7.3.tar.gz
Распаковываем


  • tar -xvf libxml2-2.7.3.tar.gz

Идем в распакованный каталог
  • cd libxml2-2.7.3
Собираем
  • ./configure
Компилируем

  • make

Устанавливаем

  • make install

Идем дальше по установке php

Если собираем php не первый раз не забываем очистить полученные файлы при предыдущей компиляции
  • make clean
Компилируем
  • make
Устанавливаем
  • make install
Проверяем установленную версию

  • /opt/php53/bin/php -v
PHP 5.3.29 (cli) (built: Apr 12 2017 19:10:19)
***********************************************************

Немного записей о том, что еще можно сделать, но пока не делал

nano /opt/php53/etc/php.ini

[Zend]
zend_extension=/opt/php53/lib/php/ZendGuardLoader.so

nano /opt/php53/lib/php/php53-cgi

#!/bin/sh
PHPRC="/opt/php53/"
export PHPRC
PHP_FCGI_CHILDREN=4
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_MAX_REQUESTS
exec /opt/php53/lib/php/php53-cgi -c /opt/php53/etc/php.ini

chmod 775 /opt/php53/lib/php/php53-cgi


Комментарии

Популярные сообщения из этого блога

mikbill расшифровка завершений сессий

Accel-ppp команды

Zabbix agent установка и настройка