Читал что использование if не очень хорошая практика. Что нужно знать об этом?
https://www.nginx.com/resources/wiki/start/topics/...
Там речь о том, что директива if при использовании в контексте location, в некоторых случаях может делать не то, что вы ожидаете. Там приводится несколько примеров таких случаев.
Единственные 100% безопасные вещи, которые могут быть сделаны внутри if в контексте location:
return ...;
rewrite ... last;
В контексте server таких проблем нет.
Так что уcловие if (...) { return 301 /@$1; } можно применять и в server и в location.
https://www.nginx.com/resources/wiki/start/topics/...
Там речь о том, что директива
ifпри использовании в контекстеlocation, в некоторых случаях может делать не то, что вы ожидаете. Там приводится несколько примеров таких случаев.Единственные 100% безопасные вещи, которые могут быть сделаны внутри
ifв контекстеlocation:return ...;rewrite ... last;В контексте
serverтаких проблем нет.Так что уcловие
if (...) { return 301 /@$1; }можно применять и вserverи вlocation.