Наблюдаю странный эффект (php + FastCGI). Вот такой код:
setcookie('test', 'test', time() + 3600, '/');
header('HTTP/1.0 401 Unauthorized');
header('WWW-Authenticate: Basic realm="Authorization required"');
$f = fopen('/tmp/aaa', 'w'); fwrite($f, print_r(headers_list(), 1));
fclose($f);
exit();
В браузер не приходит заголовок Set-Cookie. Однако, стоит закомментировать
вывод заголовков "Unauthorized" и "WWW-Authenticate", как кука начинает
выдаваться. Сам PHP исправно выдает все 3 заголовка (это видно в файле
/tmp/aaa).
Сталкивался ли кто-нибудь с таким эффектом? Похоже, nginx блокирует
заголовок Set-Cookie, если видит либо WWW-Authenticate, либо 401 (даже по
отдельности).