PUT & access_by_lua_file

itcod nginx-forum at nginx.us
Fri Apr 17 06:50:14 UTC 2015


mva добрый день!
>>На PUT он отвечает "нельзя" сразу по получении (т.е. по окончании)
*запроса*.
Да. вы описываете ситуацию верно... как я её вижу.

1. получение nginx'ом заголовка сообщения
2. получение тела сообщения
[... lua ...] -> 405

>> А отвечать "нельзя" по получении одного лишь заголовка, не дожидаясь тела
—
неправильно.

Если не затруднит обоснуйте плиззз свою точку зрения.

Моя такова:
Если метод запрещён внутри (и не важно знает об этом клиент или нет), то
можно и даже нужно обрывать соединение и вернуть код 405!. Зачем нам
получать огромное тело сообщения, если мы не обрабатываем этот метод и не
будем обрабатывать тело.

Пример:
Инициирую 1000-10000 сессий, игнорирую рекомендации nginx в OPTION и Origin,
и каждая сессия инициирует PUT video.mp4 размером скажем 4G. С большой долей
вероятности положу атакуемый сервер. А даже если не положу, то заспамлю и
загружу холостой работой.

Следовательно при обработке PUT если сервер оборвал получение и вернул код
ошибки 405 то передавать тело клиенту уже не предоставляется возможности.
imho это логично и устраняет описанную в первом сообщении проблему. 

И отсуда вытекает.... вопрос к разработчикам о внутренностях nginx.....
существует ли возможность реализовать запуск выполнения авторизатора на lua
между двумя этапами обработки.

1. получение nginx'ом заголовка сообщения
[... lua ...] ->405
2. УЖЕ НЕ! получаем тела сообщения

Или существуют ещё какие либо более простые методы решения.....

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,258069,258136#msg-258136



Подробная информация о списке рассылки nginx-ru