Você tem $args inserido em lugares inadequados. Conforme indicado pelo documento , o $args (que é equivalente a $query_string ) contém tudo seguindo o separador ? . O $uri contém tudo, incluindo o pathinfo.
try_files está verificando a existência de nomes de arquivos concatenando o root com o elemento fornecido. Então você provavelmente deveria estar usando:
try_files $uri $uri/ /index.html?path=$uri;
O elemento final deve ser um URI padrão (como /index.html ) ou uma ação de erro (como =404 ) e não ambos . Consulte este documento para obter detalhes.
Não estou familiarizado com o envio de pathinfo para um arquivo HTML, a não ser usando um parâmetro. index.php$uri funciona ok, mas index.html$uri apenas produz um erro 500.