А это клавиатура, с помощью которой я творю...
http://kurepin.ru/php/make/
Rambler's Top100
Сборка связки: Apache+PHP+GD+MySQL

Хочу предупредить сразу, что на данный выпуск иду не сознательно, а под давлением форума, в котором постоянно муссируются проблемы, связанные со сборкой и установкой программного обеспечения для поддержки web-сайтов. А если говорить точнее, проблемы сборки mysql, apache, php и т.п. в разных вариантах.

Вот и пообещал я, что изложу свои пристрастия и обычаи в этом деле.

Ничего нового или оригинального я не скажу. Просто покажу, как это делаю я. Не стоит принимать это за безукоризненное руководство к действию. Скорее, это инструкция для тех, кто сам не может справиться со сборкой данного софта.

Начнем с платформы. Под win'32 ничего, в общем-то собирать не надо, все поставляется уже в скомпилированном виде. Можно устанавливать все компоненты по отдельности, можно скопом. Вариантов много, но все они описаны поставщиками ПО и в дополнительных комментариях не нуждаются. Во всяком случае, мне тут сказать нечего, ибо я категорически отказался использовать windows-платформу для создания web-узлов. Отказался не потому, что имею зуб на Большого Билла, как это сейчас модно, а потому, что устал поднимать "упавшие" сервера и чувствовать ущербность при удаленном доступе к системе и настройке ПО.

Я поделюсь с вами пошаговой установкой ПО под любимую мою ОС -- FreeBSD. Версия ОС значения не имеет.

Боже, сколько всякой фигни я уже написал, а к делу так и не приступил. Исправляюсь!

Собираем следующую связку:

Apache (оригинальный)
PHP (4-х версий)
GD 1.3 (версия с поддержкой GIF-а)
MySql (любой версии)

Весь указанный софт является свободно распространяемым, его легко скачать из Сети.

Для начала установим MySql.

Копируем дистрибутив MySqL в директорию inst, распаковываем:

# gzip -d mysql-3.23.33.tar.gz
# tar xf mysql-3.23.33.tar

Переходим в создавшуюся директорию mysql-3.23.33 и настраиваем:

# ./configure --help

:читаем ключики настройки. В общем, тут советовать нечего, но я бы рекомендовал обратить внимание на ключи --prefix= и --with-charset=, первый из которых указывает путь к директории, в которую следует устанавливаться, а второй позволяет подключить разные языки, которые необходимы для правильной сортировки и выборки текстовых полей таблиц.

Сделали configure, сделали make, make install и можно запускать mysql.

Не стану подробно останавливаться на конфигурации и запуске MySql, так как планирую посвятить этому отдельный выпуск.

Теперь подготовим apache к сборке.

Копируем дистрибутив в директорию inst. Распаковываем аналогичным с MySql способом, переходим в создавшуюся директорию с дистрибутивом и делаем предварительную конфигурацию, например так:

# ./configure --prefix=/opt/www/www

Временно оставляем Апача и беремся за PHP.

Для начала находим в Сети подходящую версию GD, если планируем работать с графикой. Копируем в директорию inst, распаковываем, переходим в создавшийся каталог и даем короткую команду:

# make

GD готова.

Далее распаковываем PHP аналогичным способом и конфигурируем сборку:

# ./configure --help

Прочтите все ключики, найдите все, которые могут оказаться для вас полезными.

После некоторого пыхтения у нас должна сложиться строка конфигурации, вроде этой:

# ./configure --prefix=/opt/www/www/php4 --with-config-file-path=/opt/www/www/php4 --with-mysql=/usr/local/mysql --with-gd=/opt/www/install/PHP/GD/gd1.3 --with-apache=/opt/www/install/apache/apache_1.3.22

Перевожу:

--prefix -- куда устанавливаемся
--with-config-file-path -- где PHP будет искать php.ini
--with-mysql -- где у нас лежит собранный mysql
--with-gd -- где лежит собранный GD
--with-apache -- где лежит дистрибутив apache

Делаем:

#make
#make install

Если мы не ошиблись в путях, то получили модуль PHP, готовый к подключению при сборке apache.

Возвращаемся к дистрибутиву apache и начинаем его собирать:

# ./configure --prefix=/opt/www/www --activate-module=src/modules/php4

Это мы указали место установки Апача и место расположения модуля PHP. Если сборка PHP прошла успешно, модуль окажется в этой директории.
# make
# make install

Бывает, что при "make" появятся ошибки подключения библиотек и сборка на этом прервется. Это бывает. В этом случае можно попробовать полностью указать путь к модулю PHP:

# ./configure --prefix=/opt/www/www --activate-module=src/modules/php4/libphp4.a

Чаще всего это помогает.

Все, аднака! Можно запускать apache и пользоваться PHP с полной поддержкой MySQL и GD.

Как видите, все достаточно просто. Надо только быть внимательным и не сильно нервничать, когда компилятор будет останавливаться, заявляя, что не нашел какого-нибудь файла.

В заключение выпуска хочу поделиться "ОГРОМНЫМ" секретом сборки PHP для работы в командной строке.

Многие даже не подозревают, что PHP отлично работает в командной строке, выполняя работу, которую традиционно поручают sh или perl. Не знаю как другим, а мне удобно пользоваться одним языком при создании одного проекта. Поэтому я использую PHP для написания скриптов, запускаемых в cron или руками в командной строке ОС.

Так вот. Собирается PHP для командной строки точно так же, как и для apache, только не надо указывать в ./configure --with-apache. И все!

PHP соберется в указанную директорию, где в папочке bin/ будет лежать заветный файл php.

Можете пользоваться!

[шаг назад] [печатать] [в начало сайта]



copyright ©2000-2017 Ruslan Kurepin