Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[apache-talk] some questions about handlers and modules



Здравствуйте!

Я тут новенький, так что сильно не пинайте если что 8-)

Ситуация следующая:

На С пишется модуль для апача. В случае, если от клиента приходит
обращение к директории ( например http://server.ru/qwerty/ ), при этом
она существует на диске и в ней отсутствует индексный файл (редиректом
на который занимается mod_dir), необходимо, чтобы мой модуль взял на
себя управление, и отдал нечто, что нужно. Однако в этом случае на сцену
вылезает mod_autoindex, и рисует список файлов. 

Options -Indexes не помогает т.к. он в этом случае отдает forbidden. С
apache API только разбираться начал недавно, поэтому возможно чего-то не
догоняю. Своему модулю назначил хендлер как в двух вышеупомянутых
модулях:

static handler_rec mymod_handlers[] =
{
    {"mymod-handler", mymod_handler}, // "штатный" хендлер
    {"DIR_MAGIC_TYPE", mymod_handler}, // взято из mod_dir и
mod_autoindex
    {NULL}
};

где DIR_MAGIC_TYPE - макрос, заданный в httpd.h (httpd/unix-directory)

в конфиге добавил 

AddHandler mymod-handler httpd/unix-directory

но даже после сборки без mod_dir и mod_autoindex не работает -
отругивается дескать not found. До кучи сборка без этих двух модулей не
решение - в некоторых вирт. хостах мой модуль может использоваться, а в
некоторых - нет.

Буду зело признателен если уважаемое собрание подскажет как, где, и что
копать и/или ткнет носом в допущенные ошибки.

с наилучшими,
		Алексей Чегляков
=============================================================================
=               Apache-Talk@xxxxxxxxxxxxx mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =






Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.