The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Не работают подключаемые модули в Apache"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Не работают подключаемые модули в Apache"  
Сообщение от Koshak email(ok) on 06-Июн-07, 13:30 
Доброго времени суток всем.

Возникла проблема - устанавливаю Apache с поддержкой загружаемых модулей - он не стартует.
Апач apache_1.3.37 компилируется из исходников с динамически подключаемыми модулями:

./configure --prefix=/usr/local/apache --disable-module=asis --disable-module=autoindex --disable-module=imap --disable-module=userdir --disable-module=actions --disable-module=include --disable-module=negotiation --disable-module=setenvif --disable-module=status --disable-module=alias --disable-module=cgi --disable-module=env --enable-module=so --enable-shared=access --enable-shared=auth --enable-shared=dir --enable-shared=log_config --enable-shared=mime

Компиляция и установка без проблем. Создаётся каталог /usr/local/apache/libexec/ в который попадают файлы mod_access.so, mod_dir.so, mod_mime.so, mod_auth.so, mod_log_config.so.

В httpd.conf прописыватся строки:

LoadModule config_log_module  libexec/mod_log_config.so
LoadModule mime_module        libexec/mod_mime.so
LoadModule dir_module         libexec/mod_dir.so
LoadModule access_module      libexec/mod_access.so
LoadModule auth_module        libexec/mod_auth.so

ClearModuleList
AddModule mod_log_config.c
AddModule mod_mime.c
AddModule mod_dir.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_so.c

Проверка скомпилированных модулей:
# /usr/local/apache/bin/httpd -l
Compiled-in modules:
  http_core.c
  mod_so.c
suexec: disabled; invalid wrapper /usr/local/apache/bin/suexec

Каталог /usr/local/apache и всё вложенное принадлежит пользователю www.
В httpd.conf прописано:
User www
Group www

При старте:

# /usr/local/apache/bin/apachectl start
Syntax error on line 27 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/libexec/mod_log_config.so into server: Service unavailable
/usr/local/apache/bin/apachectl start: httpd could not be started

В лог в /usr/local/apache/logs/ вообще ничего не пишется, файл error_log не создаётся (т.к. httpd не стартует).

При компиляции всех этих модулей статически всё проходит прекрасно, httpd стартует.

Всю эту байду с подключением динамических модулей я затеял из-за необходимости подключить PHP, с динамическим модулем которого (libphp5.so) были те же проблемы.

Если кто сталкивался - подскажите где грабли.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Не работают подключаемые модули в Apache"  
Сообщение от cyberr email(ok) on 06-Июн-07, 16:16 
я тоже пытался подрубить ПХП5 а апачи, но у меня них не получалось. В конце концов я установил все из портов, если ты прям хочешь использовать возможности ./configure то юзай вот эту хрень:
make CONFIGURE_ARGS+=--всякая-хрень=///
make install
и так далее.
у способа есть 2 плюса: он регистрирует приложение в системе и должно устанавливать все необходимые вещи.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Не работают подключаемые модули в Apache"  
Сообщение от Koshak email(ok) on 06-Июн-07, 17:08 
>я тоже пытался подрубить ПХП5 а апачи, но у меня них не
>получалось. В конце концов я установил все из портов, если ты
>прям хочешь использовать возможности ./configure то юзай вот эту хрень:
>make CONFIGURE_ARGS+=--всякая-хрень=///
>make install
>и так далее.
>у способа есть 2 плюса: он регистрирует приложение в системе и должно
>устанавливать все необходимые вещи.

Спасибо за совет, но что-то у меня ничего не вышло :(

команда
make CONFIGURE_ARGS+=--prefix=/usr/local/apache --disable-module=asis --disable-module=autoindex --disable-module=imap --disable-module=userdir --disable-module=actions --disable-module=include --disable-module=negotiation --disable-module=setenvif --disable-module=status --disable-module=alias --disable-module=cgi --disable-module=env --enable-module=so --enable-shared=access --enable-shared=auth --enable-shared=dir --enable-shared=log_config --enable-shared=mime

скомпилировала всё в статике - т.е. все ннастройки ./configure были проигнорированы.

Если зайти в каталог work в текущем порте и выполнить там ./configure с вышеуказанными параметрами, то всё компилится классно, а запускаться не хочет. Выдаёт всю ту же ошибку: "Service unavailable".

Ещё такой косяк - после установки порта apache_1.3.37 он не регистрируется в /var/db/pkg и в /var/db/ports.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Не работают подключаемые модули в Apache"  
Сообщение от Koshak email(ok) on 06-Июн-07, 17:13 
Люди, подскажите пожалуйста, а достаточно ли модулей

http_core.c
mod_so.c

для работы Апача? Может надо ещё какие-нибудь модули в статитке с ним скомпилить?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Не работают подключаемые модули в Apache"  
Сообщение от Koshak email(ok) on 06-Июн-07, 18:35 
Кажись разобрался сам. тока оптимизма это не прибавило :(

Для компиляции Апача с поддержкой динамически загружаемых модулей надо включить опцию --enable-rule=SHARED_CORE. После включения этой опции имеем такую картину:

/usr/bin/ld: lib/expat-lite/libexpat.a(xmlparse.o): relocation R_X86_64_32S can not be used when making a shared object; recompile with -fPIC
lib/expat-lite/libexpat.a: could not read symbols: Bad value
*** Error code 1

Библиотека /usr/ports/www/apache13/work/apache_1.3.37/src/lib/expat-lite/libexpat.a скомпилирована как позиционно-зависимая position-dependent code, и её требуется перекомпилить с ключём -fPIC.

Скачиваем исходники порта expat-2.0.0_1, компилим с флагом -fPIC, помещаем libexpat.a в каталог /usr/ports/www/apache13/work/apache_1.3.37/src/lib/expat-lite/ и... та же ошибка. Всё. Пинцет. приехали. чё делать дальше не знаю...

Кто-нибудь знает как бороться с позиционно-зависимыми библиотеками?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Не работают подключаемые модули в Apache"  
Сообщение от PavelR (??) on 07-Июн-07, 08:24 

Не, я чё-то не понял - порты просто так придумали ?
Хочется развлекаться с ручной сборкой - пойми как оно должно собираться. Подсказкой будет содержание Makefile-ов из соответствующих портов(апача, мод_пхп).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Не работают подключаемые модули в Apache"  
Сообщение от Koshak email(ok) on 07-Июн-07, 12:17 
>
>
>Не, я чё-то не понял - порты просто так придумали ?
>Хочется развлекаться с ручной сборкой - пойми как оно должно собираться. Подсказкой
>будет содержание Makefile-ов из соответствующих портов(апача, мод_пхп).

Спасибо. Помогла ручная правка Makefile-ов.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру