On Thu, 11 Mar 2004, Andrey Brindeew wrote:
> Есть следующий самосборный instance Apache:
>
> $ ./httpd -l
> Compiled-in modules:
> http_core.c
> mod_env.c
> mod_log_config.c
> mod_mime.c
> mod_status.c
> mod_dir.c
> mod_cgi.c
> mod_alias.c
> mod_access.c
> mod_auth.c
> mod_expires.c
> mod_setenvif.c
> mod_uid.c
> mod_deflate.c
> mod_accel.c
> suexec: disabled; invalid wrapper /usr/local/bin/suexec
>
> При конфигурировании /server-status следующим образом
>
> <Location /server-status>
> SetHandler server-status
>
> Satisfy any
>
> AuthUserFile /web/site/webusers.pwd
> AuthName "Authorized personnel only!"
> AuthType Basic
> require valid-user
>
> Order Deny,Allow
> Deny from all
> Allow from 192.168.1.2
> </Location>
>
> location /server-status на сервере не работает. При этом в accesslog
> наблюдается следующее:
>
> 1.2.3.4 - [11/Mar/2004:08:08:48 +0300] "GET /server-status HTTP/1.0" 200
> 72336 "-" "Mozilla/5.0 (X11; U; Linux +i686; ru-RU; rv:1.6)
> Gecko/20040302" ACL:"EXPR/653/0/- 200/ADE/5 1 41/1678/72554 -" DFL:"- -
> -" "uid=C3E64936404FEE3600001DAD0304D102" "-"
>
> т.е. запрос уходит через mod_accel на backend. Но /server-status указан в
> директиве AccelNoPass.
>
> В чем может быть дело?
>
> P.S. Правильно ли я понимаю, что порядок вывода модулей в httpd -l имеет
> значение?
Порядок модулей имеет значение.
Но в данном случае должно работать так:
mod_accel видит /server-status в AccelNoPass и передаёт управление дальше.
Но этого почему-то не происходит. На сервере есть виртуальные хосты ?
Игорь Сысоев
http://sysoev.ru