Пятница, 17 Октябрь 2008
Nginx: просто ответ
Сидел я себе на работе, наслаждаясь нормальными стаканчиками, и захотелось мне иметь возможность написать в nginx.conf такую вот конструкцию:
location /response {
response "<root><pid>$pid</pid></root>";
response_type "text/xml";
}
Подумал я немного, поспрашивал разных умных, да и не очень, людей и написал, в итоге модуль. Авось кому еще пригодиться.
Патч добавляет опцию --with-http_response_module
в ./configure, и две директивы в конфиг response
и response_type
, если response_content_type не установлен, берется значение из default_type.
Для наложения можно использовать обычный patch.
Комментарии
Я не догоняю! В наш век, когда космические корабли давно уже бороздят, что мешает тебе поднять для этого дела Hg/SVN/Git-репозитарий?
Он есть, естесвенно. Просто он ниразу не публичный. И там слишком большой кусок того, что я не хочу делать публичным. Как только оно бубдет готово — выложу.
Вообще делать сто тыщ мильёнов отдельных репозиториев с модулями… Я не уверен что хочу, мне прощи именно так патчить nginx.
Тебе видней, конечно.
P.S.А вот ispell к блогу уже пора прикручивать ;)
Форма комментирования для «Nginx: просто ответ»
Его лучше интегрировать сразу в меня, ага ;)
В модуле ошибка: если не использовать в строке response переменных, то в конце появляется символ � (EF)
Хм… А можно тесты, пожалуйста? А вы попробуйте написать response “qqqn”; Именно с переносом строки, может лучше будет?
В общем все варианты перепробовал. Появляется всегда если текст простой, не зависит от того, что внутри написано. даже пройтейший response “qqqn”; Исчезает в двух случаях: 1) внутри, и не играет роли где, используется любая переменная 2) если только текст без переменных, то ошибка исчезает если последний символ > и при этом где-то ранее должен быть < а между ними хоть что-то. То есть ошибка появляется если символ > последний и в тексте нет вообще < или если есть пара <> без текста внутри
Могу я попросить вас (можно в почту catap@catap.ru) дать мне nginx.conf на котором это работает и строчку для curl/wget которой получаете файл с ошибкой?
Спасибо, исправил
а где можно скачать новую версию?
Обновил ссылку на пост.
спасибо
и спасибо за патч, внедрил его как часть моего решения генерации API ответов определения страны по IP и количество генераций в секунду возрасло на 20%
Спасибо вам за тестирование.
Рад что кому-то это еще нужно ;)