Re: Теперь нельзя выставлять тип контента!

rand257 nginx-forum at nginx.us
Thu Aug 7 15:49:01 UTC 2014


Доброго времени суток!

Извиняюсь за поднятие столь старой темы, но она полностью соответствует
моему вопросу.

Итак:
Имеется nginx, php-fpm и сайт файлохранилища, в котором для выдачи
статических файлов используется заголовок X-Accel-Redirect в отдельный
специальный локейшен. В этом локейшене выставлен post_action на вызов
php-скрипта, подсчитывающий статистику по трафику с выполненного запроса и
количеству завершенных/незавершенных скачиваний файлов. После обновления
nginx с некоей доисторической версии на современную 1.6.1 скрипт статистики
более не вызывается, в логах имеется упоминавшийся здесь алерт "header
already sent while reading response".

Однако, перестать выдавать заголовки на стороне php мы не можем, т.к.
статические файлы хранятся без расширений и с обезличенными названиями -
соответственно, нужно выставлять Content-Disposition и Content-type.
Отказаться от X-Accel-Redirect и передавать средствами php крупные
статические файлы кажется ресурсозатратным и нецелесообразным. Отказаться от
учета статистики на лету по post_action - в целом, тоже нежелательно.

Есть ли какая-либо другая возможность организовать совместную работу
post_action и X-Accel-Redirect в современных версиях nginx?

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,243030,252389#msg-252389



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