Устанавливаю php-7.0.8 и apache-2.4.20 на linux (сборка ядра производилась самостоятельно, поэтому это ни debian, ни ubuntu и не что-то еще широко распространенное). Все это дело нужно для работы Nagios https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/quickstart-ubuntu.html Для корректной работы нужно установить libapache2-mod-php7, который является модулем php для работы с apache. Проблема заключается в том, что я не могу просто установить libapache2-mod-php7 командами типа apt get install... , так как под мою архитектура компа нет готовых пакетов. Соответственно, и Apache2, и PHP я устанавливал, используя исходники + кросс-компиляцию. И вот вопрос: есть ли где-нибудь исходники libapache2-mod-php7 или же этот модуль устанавливается из исходников php? И если последнее верно, то, может быть, кто-нибудь сможет подсказать, с какой опцией нужно компилить php, чтобы этот модуль тоже собрался?
Может настроить Apache чтобы он к PHP обращался через mod_proxy_fcgi который в ходит в Apache2 и скомпилировать PHP-FPM. https://wiki.apache.org/httpd/PHP-FPM
Собрал PHP с FPM вместо CGI - никакого эффекта - на выходе по-прежнему ни одного намека на модуль libapache2-mod-php7. В к конфигурации Apache прописано, что он подгружает модуль mod_proxy_fcgi, однако это не решает проблему - модуля libapache2 как не было, так и нету(
так этот модуль уже будет не нужен, apache к PHP подключаться будет через mod_proxy_fcgi. есть разные способы подключения apache к php: mod_php, cgi, fastcgi(php-fpm)
Тогда попробую перезалить сборку с PHP-FPM на жесткий диск, посмотрю, что получится. Хотя если через CGI тоже должно было работать, тогда не понятно... вроде конфиг Apache настроен, при запуске ошибок не выдает. Строки Код (Text): LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so LoadModule php7_module modules/libphp7.so в конфиге Apache свидетельствуют о том, что модули, отвечающие за связь с php, подгружаются. --- Добавлено --- Не уверен, но может этот модуль нужен именно для связи Nagios-Apache-PHP, а не только Apache-PHP
https://php.ru/manual/install.unix.apache2.html Если есть планы использования php-fpm, то апач нужно выкидывать и использовать легкие сервера типа nginx. Гайдов по запуску nginx + php-fpm куча. Настройка и запуск php7 ничем не отличается от 5-го.
Порылся в в документации Apache. Там ни слова про libapache2-mod-php7. Что не удивительно, ведь это php-модуль для Apache, а не наоборот (поправьте меня, если я ошибаюсь). Конфигурацию php ( ./configure --help ) перерыл первым делом, когда искал этот модуль. На худой конец перерыл и конфигурацию Apache. Попробую еще поковырять файл конфигурации apache (httpd.conf). Если никакого эффекта не добьюсь, придется пробовать использовать другой сервер
В приведенной ссылке (которую я не давал права форуму изменять, кстати), все расписано по шагам. Может попробуете просто прочитать?
Поправляем. Это пхп-модуль для апачи. Апачи дает сдк для разработки модулей для него. Пхп используя это сдк собирает для апачи свой модуль. Вывод: собирать мод-пхп нужно из каталога исходников пхп. По личному опыту скажу что сборка апачи и пхп и мод-пхп достаточно простая процедура: make, make test, checkinstall Если не хватает библиотек - через apt-get install ставишь всё что нужно. Ну а вообще пхп7 идет в стандартной поставке убунты16.04, а всегда свежие версии пхп для дебиан/убунты доступны через ланчпад Ондрея Сури.
[QUOTE="Ganzal, post: 476912, member: 4278"]Поправляем. Это пхп-модуль для апачи. Апачи дает сдк для разработки модулей для него. Пхп используя это сдк собирает для апачи свой модуль. Вывод: собирать мод-пхп нужно из каталога исходников пхп.[/QUOTE] Я это и имел ввиду) Но опять же повторюсь - в исходниках php нет ни слова про libapache-mod-php, кроме слов: " Using APT First, note that other related packages may be desired like libapache2-mod-php7 to integrate with Apache 2, and php-pear for PEAR. ....... Example #1 Debian Install Example with Apache 2 # apt-get install php7-common libapache2-mod-php7 php7-cli APT will automatically install the PHP 7 module for Apache 2 and all of its dependencies, and then activate it. " что мало мне помогает. Ведь вопрос стоял в том, как должным образом сконфигурировать php до компиляции, дабы нужный модуль собрался вместе с основным пакетом, или же где найти исходник libapache-mod-php, если таковой существует (отдельно от исходника php). Не спорю. Поставить у меня все получилось. И даже работает. Но без модуля этого работает не так, как нужно. Проверял на Debian - поставил apache2, php7, libapache2-mod-php7, Nagios через apt-get install - все работает как часы. Опять же, посмотрите самый первый пост - мне нужно "запилить" не убунту, ни дебиан, ни что-либо еще супер распространенное. Ядро linux собрано самостоятельно кросс-компиляцией, так как архитектура компа специфичная (не x86). Поэтому про всякие apt-get install попросту не будут работать (даже если я соберу эту утилиту, то ей неоткуда будет качать готовые пакеты для моей архитектуры, потому что их попросту нету).[/QUOTE]
Тут https://packages.debian.org/sid/libapache2-mod-php7.0 есть для sparc64 возможно как-то задействовать или спросить у сопровождающих пакет как они компилировали для sparc
Есть подозрение, что этот модуль после сборки называется не libapache2-mod-php7, а libphp7. По крайней мере махинации с этим файликом в Debian на x86 привели к плачевному результату - картина стала такая же, как и в спарке.
Итак, господа. Я разобрался наконец с этой фигней. Я и правда решил выкинуть libapache2-mod-php5. Главным образом потому, что я его не нашел в исходниках php. С mod_php7 тоже как-то мутно. В конфигурации php перед сборкой можно выставить такой флаг Код (Text): --with-apxs2=FILE (в php5 там чуть по-другому - есть варианты поддержки более старой версии Apache). Это единственная штука в конфиге php, упоминающая Apache: " Build shared Apache 2.0 Handler module. FILE is the optional pathname to the Apache apxs tool apx" Но после сборки появляется только модуль libphp7, а вот mod_php7.so или mod_php.so почему-то отсутствуют. Есть только mod_php.o и mod_php.lo. Однако пошаманив с конфигом Apache (httpd.conf), который появляется уже после сборки, удалось добиться приемлемого отображения страничек Nagios. Всем спасибо за помощь!