Я бы переписал конфигурацию так:
location / {
...
}
location ~* ^/(?:$|.+/$|.+\.php$) {
fastcgi_index index.php;
fastcgi_pass ...
}
location ~* ^/admin/(?:$|.+/$|.+\.php$) {
auth_basic ...
fastcgi_index index.php;
fastcgi_pass ...
}
Эта конфигурация в том числе решает и проблему POSTа в /.
Спасибо за ответ.
К сожалению без справочника под рукой я мало чего понимаю в регулярных
выражениях, и вопрос такой:
каким локейшеном будут в этой ситуации обрабатываться не .php файлы из папки
/admin/ ?
если в location / , то на эти файлы НЕ БУДЕТ распространяться auth_basic
а если в location ~* ^/admin/(?:$|.+/$|.+\.php$) , то не очень понятно
насколько корректно нескриптовый контент запрашивать у fcgi-обработчика