nginx not redirecting to https
Your server
block for http
is missing server_name
. This means nginx will use the default_server
for these requests, which will display the welcome page.
Replace your first block with:
server {
listen 80;
listen [::]:80;
server_name shiny.example.com;
return 301 https://shiny.example.com;
}