Dear Dmitriy,
Monday, November 10, 2008, 1:44:38 PM, you wrote:
X-Accel-Redirect указывает на "правильный" файл - он и отдается. Для
клиента все это прозрачно - он получает все под запрошенным именем.
Так это понятно. Но вот если запрашивают, к примеру, старый файл
.exe, а сейчас этот файл отдается как .msi, то файл так и сохранится
как .exe, который на самом деле будет msi.
Поднимите руки, кто что-нибудь понял:)
Я понял раза с 5-го ;)
X-Accel-Redirect - это не внешний редирект, это редирект внутри nginx.
Свой 302-й оставляете как раньше - хотите, проксируя, хотите - в nginx
прописав. Клиент получит редирект на msi и сделает еще один запрос на
него. А вот тут уже отдаете. Э... я вот только не понял, у вас msi
динамически генерится? Зачем вам вообще бекенд в лице апача, что бы этот
файл отдать?
Тем не менее, X-Accel-Redirect ТОЛЬКО отдаёт данные из файла, на который
Вы укажете. Все остальные заголовки (в том числе content-disposition, в
котором может быть написано любое имя файла) Вы можете сформировать
самостоятельно.