Tente isso - é uma correspondência de expressão regular insensível a maiúsculas e minúsculas para qualquer coisa que contenha o favicon de substring, além de testes para a maioria das outras expressões. Coloquei duas correspondências exatas porque há uma chance de os URLs serem usados em um aplicativo. Se "favicon" for usado no aplicativo, isso causará problemas.
# Better option below for this line
location ~* favicon|apple-touch-icon|android-chrome-|mstile-|safari-pinned-tab.svg|browserconfig.xml {
root /var/www/path/to/favicons;
}
location = /browserconfig.xml {
root /var/www/path/to/favicons;
}
location = /manifest.json {
root /var/www/path/to/favicons;
}
Eu fiz um teste rápido e isso parece funcionar.
Tero Kilkanen oferece este local, o que seria uma melhor combinação. Corresponde apenas ao diretório raiz e possui um grupo sem captura.
location ^/(?:favicon|apple-touch-icon|android-chrome-|mstile-|safari-pinned-tab.svg|browserconfig.xml)$
No entanto, eu provavelmente colocaria todas as correspondências de bloco de localização em um arquivo e as incluiria. Eu suponho que as correspondências exatas são um toque mais rápido, e meus arquivos de configuração do Nginx podem ter até 500 linhas de qualquer maneira.