За последние 24 часа нас посетили 6605 программистов и 528 роботов. Сейчас ищут 210 программистов ...

libapache2-mod-php7

Тема в разделе "Установка PHP", создана пользователем sergo_fz, 12 июл 2016.

  1. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Устанавливаю 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, чтобы этот модуль тоже собрался?
     
  2. denis01

    denis01 Старожил
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.132
    Симпатии:
    1.677
    Адрес:
    Молдова, г.Кишинёв
    Может настроить Apache чтобы он к PHP обращался через mod_proxy_fcgi который в ходит в Apache2 и скомпилировать PHP-FPM.
    https://wiki.apache.org/httpd/PHP-FPM
     
  3. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Собрал PHP с FPM вместо CGI - никакого эффекта - на выходе по-прежнему ни одного намека на модуль libapache2-mod-php7. В к конфигурации Apache прописано, что он подгружает модуль mod_proxy_fcgi, однако это не решает проблему - модуля libapache2 как не было, так и нету(
     
  4. denis01

    denis01 Старожил
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.132
    Симпатии:
    1.677
    Адрес:
    Молдова, г.Кишинёв
    так этот модуль уже будет не нужен, apache к PHP подключаться будет через mod_proxy_fcgi.
    есть разные способы подключения apache к php: mod_php, cgi, fastcgi(php-fpm)
     
  5. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Тогда попробую перезалить сборку с PHP-FPM на жесткий диск, посмотрю, что получится. Хотя если через CGI тоже должно было работать, тогда не понятно... вроде конфиг Apache настроен, при запуске ошибок не выдает.
    Строки
    Код (Text):
    1. LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
    2. LoadModule php7_module modules/libphp7.so
    в конфиге Apache свидетельствуют о том, что модули, отвечающие за связь с php, подгружаются.
    --- Добавлено ---
    Не уверен, но может этот модуль нужен именно для связи Nagios-Apache-PHP, а не только Apache-PHP
     
  6. exEgor

    exEgor Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    6
    Симпатии:
    0
    Отпишитесь по результатам.
     
  7. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    https://php.ru/manual/install.unix.apache2.html

    Если есть планы использования php-fpm, то апач нужно выкидывать и использовать легкие сервера типа nginx. Гайдов по запуску nginx + php-fpm куча. Настройка и запуск php7 ничем не отличается от 5-го.
     
  8. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Пересобрал, перезалил - никакого эффекта
     
  9. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Порылся в в документации Apache. Там ни слова про libapache2-mod-php7. Что не удивительно, ведь это php-модуль для Apache, а не наоборот (поправьте меня, если я ошибаюсь). Конфигурацию php ( ./configure --help ) перерыл первым делом, когда искал этот модуль. На худой конец перерыл и конфигурацию Apache.

    Попробую еще поковырять файл конфигурации apache (httpd.conf). Если никакого эффекта не добьюсь, придется пробовать использовать другой сервер
     
  10. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.340
    Симпатии:
    44
    В приведенной ссылке (которую я не давал права форуму изменять, кстати), все расписано по шагам. Может попробуете просто прочитать?
     
  11. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.799
    Симпатии:
    937
    Поправляем. Это пхп-модуль для апачи.
    Апачи дает сдк для разработки модулей для него. Пхп используя это сдк собирает для апачи свой модуль. Вывод: собирать мод-пхп нужно из каталога исходников пхп.

    По личному опыту скажу что сборка апачи и пхп и мод-пхп достаточно простая процедура: make, make test, checkinstall
    Если не хватает библиотек - через apt-get install ставишь всё что нужно.
    Ну а вообще пхп7 идет в стандартной поставке убунты16.04, а всегда свежие версии пхп для дебиан/убунты доступны через ланчпад Ондрея Сури.
     
  12. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    [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]
     
  13. denis01

    denis01 Старожил
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.132
    Симпатии:
    1.677
    Адрес:
    Молдова, г.Кишинёв
    Для процессора Эльбрус нужно собрать?
     
  14. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Не, для спарка
     
  15. denis01

    denis01 Старожил
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.132
    Симпатии:
    1.677
    Адрес:
    Молдова, г.Кишинёв
    Тут https://packages.debian.org/sid/libapache2-mod-php7.0 есть для sparc64 возможно как-то задействовать или спросить у сопровождающих пакет как они компилировали для sparc
     
    sergo_fz нравится это.
  16. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Видимо придется стучаться к сборщикам
     
  17. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Есть подозрение, что этот модуль после сборки называется не libapache2-mod-php7, а libphp7. По крайней мере махинации с этим файликом в Debian на x86 привели к плачевному результату - картина стала такая же, как и в спарке.
     
  18. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.799
    Симпатии:
    937
    вообще он должен называться mod_php7
    --- Добавлено ---
    Показывай сценарий сборки
     
  19. sergo_fz

    sergo_fz Новичок

    С нами с:
    12 июл 2016
    Сообщения:
    10
    Симпатии:
    1
    Итак, господа. Я разобрался наконец с этой фигней. Я и правда решил выкинуть libapache2-mod-php5. Главным образом потому, что я его не нашел в исходниках php. С mod_php7 тоже как-то мутно. В конфигурации php перед сборкой можно выставить такой флаг
    Код (Text):
    1. --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.
    Всем спасибо за помощь!
     
    denis01 нравится это.