В данной инструкции мы продолжаем цикл статей по установе и настройке хостинг панели ISPConfig 3, сегодня мы для панели управления ISPConfig 3 установленной в Debian Wheezy установим дополнительные языки програмирования PHP. Так как по умолчанию из репозитория Debian Wheezy устанавливается версия PHP 5.4, то нам необходимо установить недостающие версии PHP 5.2, PHP 5.3 и 5.4, что мы и сделаем.
!!! В связи с тем, что время идет и выходят все новые версии PHP, я в статье меняю переодически ссылки на актуальные версии и рабочие ссылки в тексте, но не меняю скриншоты, потому не обращайте внимания если будет на скриншоте более старая версия дистрибутива.
Приступаем к подготовке и установке.
Устанавливаем необходимое програмное обеспечение для сборки версий PHP 5.2, PHP 5.3 и PHP 5.5 выполнив команду:
|
1
2
3
4
5
|
Mysql:
aptitude install php5-dev libxml2-dev libmhash-dev libcurl4-openssl-dev libbz2-dev libmagickwand-dev libpng12-dev libfreetype6-dev libgmp-dev libc-client2007e-dev libpspell-dev libsnmp-dev libtidy-dev libxslt1-dev make build-essential libmcrypt-dev libmysqld-dev libmagic-dev unzip libpq-dev
Mariadb:
aptitude install php5-dev libxml2-dev libmhash-dev libcurl4-openssl-dev libbz2-dev libmagickwand-dev libpng12-dev libfreetype6-dev libgmp-dev libc-client2007e-dev libpspell-dev libsnmp-dev libtidy-dev libxslt1-dev make build-essential libmcrypt-dev libmariadbd-dev libmagic-dev unzip libpq-dev
|
Копируем необходимые для сборки php библиотеки выполнив команды:
для архитектуры i386:
|
1
2
3
4
5
|
cp /usr/lib/i386-linux-gnu/libjpeg.* /usr/lib/
cp /usr/lib/i386-linux-gnu/libpng.* /usr/lib/
cp /usr/lib/i386-linux-gnu/libmysqlclient.* /usr/lib/
cp /usr/lib/i386-linux-gnu/libkrb5.* /usr/lib/
cp /usr/lib/i386-linux-gnu/libssl.* /usr/lib/
|
для архитектуры amd64:
|
1
2
3
4
5
|
cp /usr/lib/x86_64-linux-gnu/libjpeg.* /usr/lib/
cp /usr/lib/x86_64-linux-gnu/libpng.* /usr/lib/
cp /usr/lib/x86_64-linux-gnu/libmysqlclient.* /usr/lib/
cp /usr/lib/x86_64-linux-gnu/libkrb5.* /usr/lib/
cp /usr/lib/x86_64-linux-gnu/libssl.* /usr/lib/
|
Устанавливаем PHP версию 5.2.17
Создаем папки, где будем собирать и куда устанавливать, скачиваем, разархивируем и переходим в разархивированную папку с дистрибутивом PHP 5.2.17, для этого выполняем команды:
|
1
2
3
4
5
|
mkdir /opt/php-5.2.17
mkdir -p /usr/src/iserver/ && cd /usr/src/iserver/
wget -c -t0 http://softnastroy.com/downloads/php5/php-5.2.17.tar.bz2
tar jxf php-5.2*tar.bz2
cd /usr/src/iserver/php-5.2.17/
|
Скачиваем и накладываем патчи безопасности на исходные коды php 5.2.17 выполнив команды:
|
1
2
3
4
5
|
wget http://softnastroy.com/downloads/php5/php52-backports-20130717.patch
patch -p1 < php52-backports-20130717.patch
wget http://softnastroy.com/downloads/php5/debian_patches_disable_SSLv2_for_openssl_1_0_0.patch.patch.txt
patch -p1 < debian_patches_disable_SSLv2_for_openssl_1_0_0.patch.patch.txt
|
Запускаем команду для конфигурирования PHP 5.2 в Debian Wheezy c архитектурой i386:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
./configure \
--prefix=/opt/php-5.2.17 \
--with-config-file-path=/opt/php-5.2.17 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr/lib/i386-linux-gnu \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
--enable-cgi \
--enable-bcmath
|
Запускаем команду для конфигурирования PHP 5.2 в Debian Wheezy c архитектурой amd64
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
./configure \
--prefix=/opt/php-5.2.17 \
--with-config-file-path=/opt/php-5.2.17 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr/lib/x86_64-linux-gnu \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
--enable-cgi \
--enable-bcmath
|
Для Debian 8 Jessie(ПОКА НЕ РАБОТАЕТ make) дополнительно установим несколько пакетов и создадим папку и симлинк на библиотеку для удачной сборки PHP 5.2 на Debian Jessie выполнив команду:
|
1
2
3
|
aptitude install libkrb5-dev libmysqlclient15-dev
mkdir /usr/include/freetype2/freetype
ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
После этого запускаем команду для конфигурирования PHP 5.2 в Debian 8 Jessie c архитектурой i386:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
./configure \
--prefix=/opt/php-5.2.17 \
--with-config-file-path=/opt/php-5.2.17 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr/lib/i386-linux-gnu \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
--enable-cgi \
--enable-bcmath
|
Запускаем команду для конфигурирования PHP 5.2 в Debian 8 Jessie c архитектурой amd64
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
./configure \
--prefix=/opt/php-5.2.17 \
--with-config-file-path=/opt/php-5.2.17 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr/lib/x86_64-linux-gnu \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
--enable-cgi \
--enable-bcmath
|
После конфигурирования запускаем сборку и установку PHP языка версии 5.2.17 выполнив команды:
Создаем конфигурационный файл php.ini файл для версии php 5.2.17 выполнив команду:
|
1
|
cp /usr/src/iserver/php-5.2.17/php.ini-recommended /opt/php-5.2.17/lib/php.ini
|
Проверяем версию установленного PHP интерпритатора выполнив команду:
|
1
|
/opt/php-5.2.17/bin/php -v
|
ответ системы:
|
1
2
3
|
PHP 5.2.17 (cli) (built: Mar 20 2013 10:32:00)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
|
Устанавливаем PHP версию 5.3
Создаем папки, где будем собирать и куда устанавливать, скачиваем, разархивируем и переходим в разархивированную папку с дистрибутивом PHP 5.3.28, для этого выполняем команды::
|
1
2
3
4
5
|
mkdir /opt/php-5.3.29
mkdir -p /usr/src/iserver/ && cd /usr/src/iserver/
wget -t0 -c http://ua2.php.net/distributions/php-5.3.29.tar.gz
tar xvf php-5.3.29.tar.gz
cd /usr/src/iserver/php-5.3.29/
|
Запускаем конфигурирование языка PHP 5.3.29 выполнив команду подходит для обоих версий архитектур:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
./configure \
--prefix=/opt/php-5.3.29 \
--with-config-file-path=/opt/php-5.3.29 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-cgi \
--enable-bcmath
|
Запускаем после конфигурации сборку и установку PHP 5.3 для ISPConfig 3 в Debian Wheezy выполнив две команды:
Создаем конфигурационный файл php.ini, для этого выполним команду:
|
1
|
cp /usr/src/iserver/php-5.3.29/php.ini-production /opt/php-5.3.29/lib/php.ini
|
Проверяем версию установленного PHP интерпритатора выполнив команду:
|
1
|
/opt/php-5.3.29/bin/php -v
|
ответ системы:
|
1
2
3
|
PHP 5.3.29 (cli) (built: Sep 19 2013 10:21:28)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies
|
Устанавливаем PHP версию 5.5
В связи с выходом обновления PHP 5.5.38, исправляю на новую версию, не изменяя скриншоты
Создаем папки, где будем собирать и куда устанавливать, скачиваем, разархивируем и переходим в разархивированную папку с дистрибутивом PHP 5.5.38, для этого выполняем команды::
|
1
2
3
4
5
|
mkdir /opt/php-5.5.38
mkdir -p /usr/src/iserver/ && cd /usr/src/iserver/
wget -t0 -c http://ua2.php.net/distributions/php-5.5.38.tar.gz
tar xvf php-5.5.38.tar.gz
cd /usr/src/iserver/php-5.5.38/
|
Запускаем конфигурирование языка PHP 5.5.38 выполнив команду подходит для обоих версий архитектур:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
./configure \
--prefix=/opt/php-5.5.38 \
--with-config-file-path=/opt/php-5.5.38 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-cgi \
--enable-bcmath
|
После конфигурирования запускаем сборку и установку PHP языка версии 5.5.38 выполнив команды:
Создаем конфигурационный файл php.ini, для этого выполним команду:
|
1
|
cp /usr/src/iserver/php-5.5.38/php.ini-production /opt/php-5.5.38/lib/php.ini
|
Проверяем версию установленного PHP интерпритатора выполнив команду:
|
1
|
/opt/php-5.5.38/bin/php -v
|
ответ системы:
|
1
2
3
|
PHP 5.5.38 (cli) (built: Aug 17 2014 14:28:45)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
|
Добавляем установленные языки PHP 5.2, PHP 5.3 и PHP 5.5 в ISPConfig 3
Чтобы добавить установленные дополнительные версии php языка в панель управления хостингом ISPConfig 3, открываем вкладку в браузере Веб интерфейс, и переходим во вкдадку: Система — Addition PHP Versions — Add new PHP version, на скриншоте ниже Вы можете увидеть нужное для открытия окно:
Добавляем язык PHP 5.2 для панели ISPConfig 3 в Debian Wheezy
В поле Client ничего не выбираем, тогда все клиенты смогут использовать при установке сайта выбранные языки.
Добавляем PHP 5.2.17, для этого заполняем поля по примеру ниже:
- Server: webserver.server.loc
- Client:
- PHP Name: php-5.2.17
После заполнения полей нажимаем кнопку Сохранить, настраивать будем чуть позже:
Остальные версии PHP языка добавляем про примеру выше.
Добавляем язык PHP 5.3 для панели ISPConfig 3 в Debian Wheezy
Добавляем PHP 5.3.29, для этого заполняем поля по примеру ниже:
- Server: webserver.server.loc
- Client:
- PHP Name: php-5.3.29
После заполнения полей нажимаем кнопку Сохранить
Добавляем язык PHP 5.5 для панели ISPConfig 3 в Debian Wheezy
Добавляем PHP 5.5.38, для этого заполняем поля по примеру ниже:
- Server: webserver.server.loc
- Client:
- PHP Name: php-5.5.38
После заполнения полей нажимаем кнопку Сохранить
После добавления устанавливаемых версий PHP, у нас в окне Система — Addition PHP Versions будут добавленные 3 версии PHP: PHP 5.2.17, PHP 5.3.29 и PHP 5.5.38 на скриншоте ниже видно:
Теперь нам необходимо каждую добавленную версию PHP языка открыть и отредактировать пути к исполняемым файлам и к конфигурационному файлу php.ini
Открываем PHP 5.2.17 и во вкладке FastCGI Settings заполняем поля по примеру ниже:
- Path to the PHP FastCGI binary: /opt/php-5.2.17/bin/php-cgi
- Path to the php.ini directory: /opt/php-5.2.17/lib
После заполнения данных полей, для сохранения изменений нажимаем кнопку Сохранить:
Открываем PHP 5.3.29 и во вкладке FastCGI Settings заполняем поля по примеру ниже:
- Path to the PHP FastCGI binary: /opt/php-5.3.29/bin/php-cgi
- Path to the php.ini directory: /opt/php-5.3.29/lib
После заполнения данных полей, для сохранения изменений нажимаем кнопку Сохранить:
Открываем PHP 5.5.38 и во вкладке FastCGI Settings заполняем поля по примеру ниже
- Path to the PHP FastCGI binary: /opt/php-5.5.38/bin/php-cgi
- Path to the php.ini directory: /opt/php-5.5.38/lib
После заполнения данных полей, для сохранения изменений нажимаем кнопку Сохранить: