ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

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

Re: Проблема с fastcgi



Hello Igor,

On Sat, Mar 08, 2008 at 04:58:52PM +0000, David Mzareulyan wrote:

Игорь, а зачем это разрешать/запрещать отдельным ключом? Какие
проблемы
могут быть с постами в статику?
Ну то есть, понятно, что если там в самом деле статика, то надо
выдать
ошибку. Но если там 404-й обработчик -- почему нельзя доверить ему
решение?
В принципе, это решается так:

error_page  404 405 = @fallback;

Самое естественное решение, да, но ведь сейчас-то это не работает.

Просто по логике (я не знаю внутренностей nginx, так что могу сказать глупость): пришёл POST-запрос, мы нашли для него локацию. Если по этой локации найден статический файл, то выдаём 405. Если не найден, то мы переходим на локацию, соответствующую 404-й ошибке и процедура повторяется. Рано или поздно кто-то или обработает запрос или выбросит ошибку.

Поэтому нелогично выглядит, когда при POST-запросе управление не переходит на @fallback. Ну не нашёлся файл -- так ведь ясно сказано, куда идти, если не нашёлся.

Тем не менее, ситуация неоднозначная - POST в статику, как правило,
бессмысленен и сервера (тот же Апач) для него возращают 405.

Однако, есть как минимум два случая, когда POST можно разрешить:

1) статический файл проходит через SSI, который делает вставку с
сервера,
понимающего POST.

Хм. Вот о таком я не подумал. Это, наверное, единственный вариант, когда может понадобиться явное разрешение/запрещение поста в статику -- потому что только в этом случае nginx делает какую-то интерпретацию файла.

Может быть, разрешать пост всегда для ssi on? Хотя, наверное, это неправильно.

2) статическая страница о профикалктических работах, которая должна
тупо
показываться в том числе и для POST'а.

Ну, это довольно специальный случай... не так трудно явно указать страницу с ошибкой.

--
С уважением
Давид Мзареулян
david@xxxxxxxx






 




Copyright © Lexa Software, 1996-2009.