EJabberd: mod_http_fileserver

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

IMB
Сообщения: 2567
ОС: Debian

EJabberd: mod_http_fileserver

Сообщение IMB »

Доброго дня!
Установлен ejabberd 2.0.1. Настроил mod_http_fileserver, но что не происходит отображение индексного файла при обращении в директорию.
При обращении localhost:5280/pub выводится только esdir, хотя, насколько я понял, должен обработаться индексный файл, если же я запрашиваю любой файл из директории - всё нормально отдаётся.
Настройки ejabberd:

Код: Выделить всё

{listen, [
.....................................
 {5280, ejabberd_http, [
                         http_poll,
                         web_admin,
                        {request_handlers, [{["pub"], mod_http_fileserver}]}
                        ]}

 ]}.
{modules, [
................................
{mod_http_fileserver, [{docroot, "/tmp/ejabberd"}, {accesslog, "/var/log/ejabberd/ejabberd.log"}, {directory_indices, ["index.html"]}]},
....................]}.
Лог:
[code]127.0.0.1 - - [7/7/2010:17:48:16] "GET /pub?nokey=" 404 -1 "-" "-" //обращение по адресу
127.0.0.1 - - [7/7/2010:17:48:37] "GET /pub/index.html?nokey=" 200 -1 "-" "-" //запрос индексного файла

В чём проблема?
Спасибо.


Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: EJabberd: mod_http_fileserver

Сообщение sash-kan »

наивный вопрос: /tmp/ejabberd/index.html существует?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: EJabberd: mod_http_fileserver

Сообщение sash-kan »

посмотрел на исходники mod_http_fileserver.erl: https://forge.process-one.net/browse/ejabbe...rver.erl?r=HEAD
что-то не вижу добавления слэша в конце пути. если со слэшем, срабатывает?
localhost:5280/pub/
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EJabberd: mod_http_fileserver

Сообщение IMB »

Со слешем в конце также не отрабатывает.
index.html, я его разместил в /tmp/ejabberd/pub, существует, это чётко видно в логе, я там приписал в виде комментария как обращался. Но я думаю это уже заметили ;)
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: EJabberd: mod_http_fileserver

Сообщение sash-kan »

так что, собственно, браузеру отдаётся? судя по коду, видимо, какое-то сообщение об ошибке должно возвращаться.
оно такое же, как и при указании несуществующего файла?

вообще слэш там может где-нибудь в глубине и убираться и подставляться.
попробуйте в конфиге слэш указать перед именем: «/index.html».
или в исходниках сразу вставьте (перекомпилировать beam надо будет).

upd. а явное обращение к index.html что выдаёт в браузер?
upd2. патч, добавляющий индексы, включен всего год назад. если версия ejabberd из репозитория debian lenny, то там явно нет этой функциональности.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EJabberd: mod_http_fileserver

Сообщение IMB »

При обращении localhost:5280/pub в броузер выводится esdir, в лог - 127.0.0.1 - - [8/7/2010:14:46:38] "GET /pub?nokey=" 404 -1 "-" "-"
При обращении localhost:5280/pub/ в броузер выводится esdir, в лог - 127.0.0.1 - - [8/7/2010:14:46:38] "GET /pub?nokey=" 404 -1 "-" "-"
При обращении localhost:5280/pub/<несуществующий файл> в броузере Not found, в лог - 127.0.0.1 - - [8/7/2010:14:46:51] "GET /pub/test.xhtml?nokey=" 404 -1 "-" "-"
При обращении localhost:5280/pub/<существующий файл> в лог - 127.0.0.1 - - [8/7/2010:14:47:11] "GET /pub/index.html?nokey=" 200 -1 "-" "-"
Попробовал в конфиге перед индексным файлом указать / - в броузере esdir.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: EJabberd: mod_http_fileserver

Сообщение sash-kan »

вот это не пропустили:
sash-kan писал(а):
08.07.2010 14:39
upd2. патч, добавляющий индексы, включен всего год назад. если версия ejabberd из репозитория debian lenny, то там явно нет этой функциональности.
?

а что выдаёт ejabberd при обращении к каталогу при начальных настройках, но если файл index.html там отсутствует?

p.s. а что такое «esdir»? у меня ejabberd под рукой нету. может, это что-то важное?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: EJabberd: mod_http_fileserver

Сообщение IMB »

Похоже upd2 появился очень незаметно :)
Да установлен из репозитория, сейчас попробую поставить c backports, там версия 2.0.5. Поставил - без изменений.
Что же, неудобно, но не смертельно, подождём выхода Squeeze и обновимся до 2.1.3.
Спасибо сказали: