день добрый
freebsd 7.2, apache 2.2.22_5. проблема в включении mod_status. собственно
LoadModule status_module libexec/apache22/mod_status.so
включен в конфиг.
текст далее<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from *.*.*.*
</Location>
ExtendedStatus Onв апач загружается модуль и в списке отмечается, как загруженный.
при указании
http://ip/server-status
или
http://hostname/server-statusв логах отмечается, что запрос был, но такой ощущение, что до модуля данные не доходят и далее передаётся на страничку, которая указана в DocumentRoot, т.е. собственно результатов работы модуля не видно
дополнение ко всему вышесказанномуapachectl -t -D DUMP_MODULES Loaded Modules:
core_module (static)
mpm_prefork_module (static)
http_module (static)
so_module (static)
authn_file_module (shared)
authn_dbm_module (shared)
authn_anon_module (shared)
authn_default_module (shared)
authn_alias_module (shared)
authz_host_module (shared)
authz_groupfile_module (shared)
authz_user_module (shared)
authz_dbm_module (shared)
authz_owner_module (shared)
authz_default_module (shared)
auth_basic_module (shared)
auth_digest_module (shared)
file_cache_module (shared)
cache_module (shared)
disk_cache_module (shared)
dumpio_module (shared)
include_module (shared)
filter_module (shared)
charset_lite_module (shared)
deflate_module (shared)
log_config_module (shared)
logio_module (shared)
env_module (shared)
mime_magic_module (shared)
cern_meta_module (shared)
expires_module (shared)
headers_module (shared)
usertrack_module (shared)
unique_id_module (shared)
setenvif_module (shared)
version_module (shared)
ssl_module (shared)
mime_module (shared)
dav_module (shared)
status_module (shared)
info_module (shared)
autoindex_module (shared)
cgi_module (shared)
cgid_module (shared)
vhost_alias_module (shared)
negotiation_module (shared)
dir_module (shared)
imagemap_module (shared)
actions_module (shared)
userdir_module (shared)
alias_module (shared)
rewrite_module (shared)
php5_module (shared)
dav_svn_module (shared)
authz_svn_module (shared)
Syntax OK
захотел включить модуль dumpio
собственно включил в конфигDumpIOInput on
DumpIOOutput on
DumpIOLogLevel debugв error.log нет информации о вх. и исх. ответах. собственно или модуль не загрузился, хотя по списку это не так и в конфиге он указан или я чего не так делаю или уже даже и не знаю, что думать.
>[оверквотинг удален]
> LoadModule status_module libexec/apache22/mod_status.so
> включен в конфиг.
> текст далее
> <Location /server-status>
> SetHandler server-status
> Order deny,allow
> Deny from all
> Allow from *.*.*.*
> </Location>
> ExtendedStatus OnНе понял, как у вас сделано.
Вы что, в основной конфиг апача это всё пихаете?
Зачем? По дефолту всё прекрасно работает.То есть в httpd.conf в конце
есть такие строчки
# Real-time info on requests and configuration - Запрос и получение
# информация и настроек конфигурации в режиме реального времени
Include etc/apache22/extra/httpd-info.confСоответственно, строка с инклюдом должна быть раскомменченной
А в самом файле /usr/local/etc/apache22/extra/httpd-info.conf
нужно указать в Allow себя любимогоcat httpd-info.conf
#
# Получение информации о запросах, обрабатываемых сервером
# и конфигурации сервера.
#
# Обязательные модули: mod_status (для обработчика статуса сервера "server-status"),
# mod_info (для обработчика информации о сервере "server-info")#
# Разрешить выдачу сообщений-отчетов о состоянии сервера,
# сгенерированный mod_status, с URL http://servername/server-status
# Для включения, измените ".example.com" на значение вашего домена.<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from .example.com
</Location>#
# Директива ExtendedStatus определяет, будет ли Apache выдавать подробную
# информацию о состоянии (ExtendedStatus On), или только общую справку
# (ExtendedStatus Off), при обращении к функции "server-status".
# Значение по умолчанию - Off.
#
#ExtendedStatus On#
# Разрешить выдачу сообщений-отчетов о настройках и конфигурации сервера с URL
# http://servername/server-info (требуется, чтобы mod_info.c был загружен).
# Для включения, измените ".example.com" на значение вашего домена.
#
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from .example.com
</Location>Ну, проверить всё же присутствие строк в httpd.conf
LoadModule status_module libexec/apache22/mod_status.so
LoadModule info_module libexec/apache22/mod_info.soИ наличие самих сошек mod_status.so и mod_info.so в /usr/local/libexec/apache22/
А то мало ли.. вдруг их вирус потёр )))
я упрощённо написал, конечно же нет, всё именно так, как вы описали, включается внешним файлом и в файле всё описано и раскомменчено. и модули подгружаются, причём если поиграться:Order deny,allow
Deny from all
Allow from чего-нибудьто по нужному мне урлу с /server-status
он даже будет запрещать доступ, если ip адрес будет не верный, но как указываю верный, управление передаётся дальше на сайт, т.е. модуль не исполняется.
модули присутствуют, если бы их не было, в error.log я бы увидел, а там никаких ошибок в общем-то нет.
>[оверквотинг удален]
> модули подгружаются, причём если поиграться:
> Order deny,allow
> Deny from all
> Allow from чего-нибудь
> то по нужному мне урлу с /server-status
> он даже будет запрещать доступ, если ip адрес будет не верный, но
> как указываю верный, управление передаётся дальше на сайт, т.е. модуль не
> исполняется.
> модули присутствуют, если бы их не было, в error.log я бы увидел,
> а там никаких ошибок в общем-то нет.А server-info отдаётся?
Может имеет смысл, для очистки совести, пересобрать апач занаво?
Сделать
cd /usr/ports/www/apache22
make rmconfig
И внимательно посмотреть/проверить опции сбрки (STATUS Enable mod_status)
make install clean
Хотя версия апача у вас вроде как последняя.
Проверил у себя на 9-ке, работает.
с mod_info такая же история ;(я пересобирал, но через make, make deinstall, make install
реакция такая же.модули смотрел через make config
после пересборки посмотрел даты создания модулей, всё обновилось.
> с mod_info такая же история ;(
> я пересобирал, но через make, make deinstall, make install
> реакция такая же.
> модули смотрел через make config
> после пересборки посмотрел даты создания модулей, всё обновилось.Могу предположить, что есть файл .htaccess в корне
и в нём чего-нибудь этакое прописано, например RewriteRule
Ради эксперимента у себя проверил, то да, если он есть и
хитрое правило прописано, то status и info не показывает.
Такие дела.
>> с mod_info такая же история ;(
>> я пересобирал, но через make, make deinstall, make install
>> реакция такая же.
>> модули смотрел через make config
>> после пересборки посмотрел даты создания модулей, всё обновилось.
> Могу предположить, что есть файл .htaccess в корне
> и в нём чего-нибудь этакое прописано, например RewriteRule
> Ради эксперимента у себя проверил, то да, если он есть и
> хитрое правило прописано, то status и info не показывает.
> Такие дела.я думал об этом. там прописано вот это и пути
php_value register_globals off
DirectoryIndex index.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /index.php [L]php_flag display_errors on
>[оверквотинг удален]
>> хитрое правило прописано, то status и info не показывает.
>> Такие дела.
> я думал об этом. там прописано вот это и пути
> php_value register_globals off
> DirectoryIndex index.php
> RewriteEngine on
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteCond %{REQUEST_FILENAME} !-d
> RewriteRule .* /index.php [L]
> php_flag display_errors onСделать
#RewriteRule .* /index.php [L]
и проверить
>[оверквотинг удален]
>> php_value register_globals off
>> DirectoryIndex index.php
>> RewriteEngine on
>> RewriteCond %{REQUEST_FILENAME} !-f
>> RewriteCond %{REQUEST_FILENAME} !-d
>> RewriteRule .* /index.php [L]
>> php_flag display_errors on
> Сделать
> #RewriteRule .* /index.php [L]
> и проверитьбольшое спасибо, помогло ;)