Se você alterar sua reescrita para
rewrite ^/(.*)/$ /snapshots/$1.html break;
rewrite ^/(.*)$ /snapshots/$1.html break;
a primeira linha corresponderá apenas às linhas que terminam em uma barra e $1
conterá o caminho completo menos as barras iniciais e finais. O segundo vai pegar o resto dos casos (que estão funcionando agora).