De os documentos :
By default, nginx removes all environment variables inherited from its parent process except the TZ variable.
Como você mencionou, você tentou configurá-los na configuração fastcgi, que é, na minha opinião, o melhor que você pode fazer nessa situação. Para o benefício de outros, isso é feito assim:
location ~ \.php$ {
# ...
fastcgi_param APPLICATION_ENV "production";
fastcgi_param MY_OTHER_ENV "things";
include fastcgi_params;
# ...
}
Eu entendo a aversão a "copiar e colar" e concordo! Você deve olhar para usar uma ferramenta de gerenciamento de configuração, como Puppet, SaltStack, Ansible para gerenciar seus arquivos de configuração. Dessa forma, você pode facilmente sincronizar sua lista de variáveis de ambiente entre todos os locais necessários. Deixe-me saber se você precisar de mais informações sobre isso.