The goal is to load pages from blog.example.com/blog using example.com/blog and all the posts, categories and authors.
location /blog(/.*)$ {
rewrite ^ $1 break;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass https://blog.example.com/blog$1;
proxy_ssl_server_name on;
}
Gives a 500 error
blog.example.com
is publicly reachable, this will lead duplicate content, which is bad for SEO. You need to at least set canonical URLs properly.