Руководство по сборке интерпретатора PHP

Как собрать свой собственный интерпретатор PHP

Статья предназначена для Клиентов, имеющих доступ к консоли SSH.

Для того, чтобы собрать свой собственный интерпретатор PHP сначала нужно получить SSH-доступ к консоли сервера ( согласно тарифному плану , либо подключив дополнительную опцию). Далее, зайдя по SSH, действуйте по следующему алгоритму:

  • В домашней директории создаем поддиректорию для временного хранения исходных текстов интерпретатора PHP. Создаем каталог с названием src командой mkdir src и заходим в него, выполнив команду cd src.
  • Скачиваем с сайта разработчиков дистрибутив PHP:

wget http://php.net/get/php-5.х.х.tar.bz2/from/this/mirror

  • Распаковываем архив командой tar -xjvf php-5.х.х.tar.bz2
  • Переходим в каталог php-5.х.х командой cd php-5.х.х
  • Используя команду ./configure выполняем предварительную конфигурацию PHP для дальнейшей компиляции. Выполнив команду ./configure --help | more вы увидите полный список возможных опций, из которых вам нужно выбрать нужные.

    Пример конфигурации:

./configure --prefix=/home/vhosts/ имя_домена /private/php --with-mysql --enable-ftp --enable-dbase --with-gdbm --with-ndbm --with-iconv --with-gd --enable-gd-native-ttf --with-jpeg-dir --with-png-dir --with-freetype-dir --with-ttf --with-zlib-dir --disable-posix --enable-force-cgi-redirect --enable-inline-optimization --without-pear --disable-debug --with-libdir=lib64

Пример конфигурации с поддержкой IMAP :

./configure --prefix=/home/vhosts/ имя_домена /private/php --with-mysql --enable-ftp --enable-dbase --with-gdbm --with-ndbm --with-iconv --with-gd --enable-gd-native-ttf --with-jpeg-dir --with-png-dir --with-freetype-dir --with-ttf --with-zlib-dir --disable-posix --enable-force-cgi-redirect --enable-inline-optimization --without-pear --disable-debug --with-imap --with-imap-ssl --with-libdir=lib64

  • Запускаем компиляцию и последующую установку уже сконфигурированного PHP:

make
make install

По завершению процессов сборки и установки в каталоге php/bin/ (выполняем cd ~/php/bin/ ) вы найдете исполняемый бинарный файл php.

  • Посмотреть с какими модулями он был собран можно командой ./php -m (чтобы убедиться что вы собрали именно нужный вам PHP)

  • Копируем исполняемый файл в ваш каталог cgi-bin, выставляем необходимые права:

cp /home/ vhosts/ имя_домена / private/ php/bin/php-cgi /home/ vhosts/ имя_домена /cgi-bin/php
chmod 755 /home/
vhosts/ имя_домена /cgi-bin/php

Если вы собираете PHP версии более ранней, чем 5, то CGI-интерпретатор создается с другим именем:

cp /home/ vhosts/ имя_домена / private/ php/bin/php b /home/ vhosts/ имя_домена / cgi-bin/
chmod 755 /home/
vhosts/ имя_домена / cgi-bin/php

Копируем конфигурационный файл в ваш каталог cgi-bin:

cp /etc/php5/apache2/php.ini
/home/
vhosts/ имя_домена / cgi-bin/php.ini

имя_домена — на название вашего домена, для которого Вы устанавливаете новый PHP.

  • В каталоге www создаем файл .htaccess со следующими директивами:

AddHandler php-script .php
Action php-script /cgi-bin/php

Теперь файлы с расширением *.php будут обрабатываться именно собранным вами PHP, а остальные PHP-скрипты (файлы с другими расширениями из тех, что обрабатываются нашим веб-сервером как PHP-скрипты) — основным PHP-модулем веб-сервера.Если все работает, то каталог $HOME/php-5.х.х можно удалить: cd; rm -rf php-5.х.х

Также Вы всегда можете обратиться в Службу технической поддержки хостинга. Мы установим на Ваш веб-сервер необходимую Вам версию PHP.