Установка из пакетов или портов в ОС OpenBSD

Cекция содержит замечания и советы, которые касаются установки PHP на ОС » OpenBSD.

Работа с бинарными пакетами

Бинарные пакеты для установки PHP на OpenBSD — простейший и рекомендованный способ. Ядро (основной пакет) отделили от модулей, но каждый из них устанавливается или удаляется независимо от другого. Файлы, которые потребуются для установки, доступны на CD-диске с ОС OpenBSD или на FTP-сервере.

Основной пакет, который потребуется установить — php, он содержит базовый движок (плюс модули fpm, gettext и iconv) и доступен в разных версиях на выбор. Затем обратите внимание на пакеты модулей наподобие php-mysqli или php-imap. Включением модулей в файле php.ini управляют командой phpxs.

Пример #1 Пример установки пакетов в OpenBSD

# pkg_add php
# pkg_add php-apache
# pkg_add php-mysqli
  (install the PEAR libraries)
# pkg_add pear

Следуйте инструкциям, которые выводят пакеты во время установки!

  (to remove packages)
# pkg_delete php
# pkg_delete php-apache
# pkg_delete php-mysqli
# pkg_delete pear

Страница руководства к функции » packages(7) даёт больше информации о бинарных пакетах в ОС OpenBSD.

Использование портов

PHP также компилируют из исходного кода » дерева портов. Способ рекомендуют только пользователям с опытом работы в ОС OpenBSD. Порт PHP разделили на ядро и модули. Модули генерируют подпакеты для каждого модуля, который поддерживается PHP. Параметр вроде no_*, где вместо символа звёздочки указали название модуля, не станет создавать модуль. Например, чтобы пропустить и не создавать модуль imap, устанавливают параметр no_imap.

Стандартные проблемы

  • Веб-серверы Apache и Nginx больше не веб-серверы по умолчанию для OpenBSD, но они доступны в портах и пакетах. Новый сервер по умолчанию называется 'httpd'.
  • Стандартная установка httpd работает » в изоляции chroot(2), что запрещает PHP доступ к файлам вне каталога /var/www. Поэтому потребуется создать директорию /var/www/tmp, чтобы сохранять файлы PHP-сессий, или использовать альтернативный бэкенд для управления сессиями. Сокеты баз данных потребуется разместить в изоляции или прослушивать на интерфейсе localhost. При работе с сетевыми функциями отдельные файлы из каталога /etc наподобие /etc/resolv.conf и /etc/services потребуется переместить в каталог /var/www/etc. Пакет OpenBSD репозитория PEAR автоматически устанавливается в правильные каталоги chroot.
  • Пакет модуля » gd для OpenBSD требует установки графического интерфейса Xorg. Пакет добавляют после базовой установки (смотрите » OpenBSD FAQ#4), если пакет ещё не установили при базовой установке путём добавления набора файлов xbase.tgz.