Multisite with nginx - images don't display

Hello! I have a new site installed with Bedrock/Capistrano. I am not using Sage, Trellis or Ansible.

Everything is going great - until I tried to upload some images. The images upload correctly - but do not display in either the media library or on a post - I just see the broken image icon.

My permissions and ownership settings are ok - the images DO get uploaded to the server (I can see them in the shared/web/app/uploads/2017/06 directory) and they are also in the database. If I do:

Select * from wp_posts where post_type = ‘attachment’;

They are present, with the correct urls (example.com/app/uploads/2017/06/myimage.jpg)

I’m thinking this is an nginx configuration problem - I am using the standard rewrite as suggested by nginx:

if (!-e $request_filename) {
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
rewrite ^/[_0-9a-zA-Z-]+(/wp-.) $1 last;
rewrite ^/[_0-9a-zA-Z-]+(/.
.php)$ $1 last;
}

Any advice on this? Am I missing a setting for the uploads folder? Thank you.

I had an image problem with a multisite installation. the problem was that the image references in the db were using https but should have been http (on my local env), I used the find and replace tool in migrate db pro which sorted out the problem

Thanks, but that’s not it…no problems with https.

The only time I’ve ever had an issue like this was when images were served via a different site (Cloudflare). But this is a pair of brand-new servers, with no plugins or caching at all (yet).