x-accel-redirect и content-type

cuper6 nginx-forum на forum.nginx.org
Пт Янв 8 14:08:11 UTC 2016


Здравствуйте,
На сервере работает nginx 1.2.1 в качестве фронтэнда и apache в качестве
бэкэнда.
 
Никак не могу задать content-type при использовании x-accel-redirect.
Пример ниже синтетический и максимально упрощен для указания на суть
проблемы:

<?php
header("Content-Type: image/jpeg");
header("Content-disposition: inline; example.jpg");
header("Content-transfer-encoding: binary");
header("X-Accel-Redirect: /attach/myfile.attach");
?>
возвращает Content-Type как plain/text, а мне нужно, чтобы было image/jpeg!

в то время как идентичный пример, но с любым другим известным (типичным)
расширением файла работает так, как нужно: 
<?php
header("Content-Type: image/jpeg");
header("Content-disposition: inline; example.jpg");
header("Content-transfer-encoding: binary");
header("X-Accel-Redirect: /attach/myfile.gif");
?>
возвращает Content-Type: image/jpeg

Т.е. Content-Type можно задать только, если у исходного файла какое-то
известное nginx расширение. Если же расширение (в моем случае ".attach") не
известно nxing, то задать Content-Type никак не получается.
Переименовывать файлы или делать симлинки в данном случае не подходит по
ряду причин. 
Можно ли как-то решить эту проблему?

Posted at Nginx Forum: https://forum.nginx.org/read.php?21,263897,263897#msg-263897



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