Sua solução não funciona, porque você não tem um regex location
(o caractere ~
está ausente) e você finaliza o local com o $
, que é um caractere regex.
Você pode fazer isso de maneira um pouco mais simples:
location ~ /blog/wp-content/(?<filename>.+)$ {
rewrite ^ /wp-content/$filename last;
}
Então, aqui você faz a captura de regex na diretiva location
e usa a parte capturada do caminho com o destino rewrite
.
Se você deseja fazer um redirecionamento do lado do cliente 301, use o seguinte:
location ~ /blog/wp-content/(?<filename>.+)$ {
rewrite ^ http://www.domain.com/wp-content/$filename permanent;
}