Страница 1 из 1
apachectl -t
Добавлено: 2008-10-24 21:23:44
ProFTP
нужно проверить валидность передаеваемых данных в конфиг в apache в секцию vhost, есть модуль mod_security со многими директвиами, проверять каждую директиву долго...
то есть проверить сможет ли apache перегрузиться с данными директивами которые будут вставленны, как это сделать, можно?
пишеться это CGI, работает не от root
Re: apachectl -t
Добавлено: 2008-10-24 21:33:24
paradox
разве что под себя преписать модуль
исключительно для анализа
хотя наскоко я помню
вроде как апач не запускаеть если ошибки и отчет пишет в лог
при реконфигуре или HUP
или мну забыл уже
Re: apachectl -t
Добавлено: 2008-10-24 21:36:36
ProFTP
пишеться это CGI, работает не от root
мне нужен код который проверит валидность эти данных, вставить код можно сюда
http://search.cpan.org/~ingy/Inline-0.44/C/C.pod
или в дополнительній свой модуль
в исходниках апаче долдна быть функция которыя проверит валидность полного конфига?
или это нельзя сделать?
paradox писал(а):разве что под себя преписать модуль
исключительно для анализа
какой модуль?
Re: apachectl -t
Добавлено: 2008-10-24 21:41:49
paradox
есть модуль mod_security со многими директвиами, проверять каждую директиву долго..
Re: apachectl -t
Добавлено: 2008-10-24 21:44:26
ProFTP
спасибо,понял, модуль нужно смотреть...

Re: apachectl -t
Добавлено: 2008-10-24 21:45:31
paradox
в исходниках апаче долдна быть функция которыя проверит валидность полного конфига? или это нельзя сделать?
ну надо смотреть
апаче один и два разные по своей структуре наскоко я помню
теоретически должна быть функ проверки конфига
но для каждого модуля кажись эта функция в нем самом
Re: apachectl -t
Добавлено: 2008-10-25 3:25:38
ProFTP
сори, поспешил, там чтение на валидность и ошибки конфига разбросана по всем исходникам, лучше просто сделать проверку каждой строки...
Re: apachectl -t
Добавлено: 2008-10-25 4:27:07
zg
ProFTP писал(а):то есть проверить сможет ли apache перегрузиться с данными директивами которые будут вставленны, как это сделать, можно?
код возврата: 0 - можно, любое другое значение - ошибка.
В общем случае работа выглядит так - создаётся временная копия конфига, потом конфиг изменяется, идёт проверка через apachectl configtest, если успех, то копия удаляется (или остаётся по желанию), неудача конфиг откатывается.