Во-первых /[a-zA-Z0-9\.]+\.(pgp|gpg|key)$ будет соответствовать любому URI оканчивающемуся на /*.pgp (в том числе и /something/*.pgp), вы сами не привязали регулярку к началу "^".
Во-вторых, так уже прямо вам реврайт нужен?
location ~* ^/[a-z0-9\.]+\.(pgp|gpg|key)$ {
try_files /www/http/_global/key.pgp =404;
}