The problem is I can't find a way to get the size of the served file.
Você pode tentar usar o script LUA para encontrar o tamanho do arquivo.
Dê uma olhada no projeto openresty .
Documentos: link
Existe um módulo openresty relacionado para configurar o nginx via lua: link
Você pode tentar implementar um módulo semelhante para o seu caso.