Re: SSI для бинарных данных или аналог

Maxim Dounin mdounin на mdounin.ru
Вт Сен 11 11:19:21 UTC 2018


Hello!

On Tue, Sep 11, 2018 at 07:41:57AM +0300, Fedor Dikarev wrote:

> Столкнулся с задачей: хотим чтобы nginx собирал бинарный ответ из
> частей. Пример задачи: клиент скачивает из личного кабинета установщик
> (exe файл), а мы в конец этого exe файла дописываем json с конфигурацией
> для этого клиента. И собственно при первом запуске пользователю не надо
> вбивать адреса серверов и другие базовые настройки, все уже на месте.
> 
> Собственно можно ли через SSI собирать бинарные ответы?
> 
> Или можно ли как-то из своего скрипта сделать chunked ответ, где через
> X-Accel-Redirect отдать первую бинарную часть ответа, а потом выдать
> контент с конфигурацией?

ЕМНИП, в SSI проблем с бинарными данными нет, и кто-то даже 
использовал его для сборки бинарных данных.  Главное - не 
вставлять лишних переводов строк между SSI-командами.  Ну и плюс 
есть всякие другие способы создавать подзапросы, включая наиболее 
простой add_after_body (http://nginx.org/r/add_after_body), там 
точно никаких проблем с бинарными данными не будет.

Основная проблема, которая тут возникает - это неработоспособность 
range-запросов и соответственно докачки, так как размер ответа 
заранее неизвестен, да и range-фильтр не очень расчитан на то, чтобы 
работать с подзапросами.  Если отсутствие докачки не пугает - то и 
хорошо.

-- 
Maxim Dounin
http://mdounin.ru/


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