If is Evil

Daniel Podolsky onokonem at gmail.com
Sun Sep 1 20:47:34 UTC 2013


> да и выяснить причину раз и навсегда куда полезнее, чем просто запомнить
> постулат "скажем if в location - НЕТ"
А мы им не скажем НЕТ. Мы просто помним, что для if создается скрытый
location, и что туда наследуется, а что нет, и какая там в результате
будет конфигурациия - ни за что не прописаешь, как говорили в школе.

Поэтому мы пользуемся if, но только одним образом - делаем на нем
переадресацию в именованный локейшн.

Отдельно, конечно, смешно то, что это единственный разумный способ
пользоваться if, но директивы переадресации как не было, так и нет, и
приходится писать что-то вроде if (condition) { error_page 418 =
@location; return 418; }


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