Configuring nginx for white label

Hi all,

I am trying to configure a “white-label” set up where the reseller
supplies only the files he needs to over-ride the basic installation - a
few images, perhaps a css file and an occasional .php file. All files he
does NOT supply should be served from a master location.

Say master is hosted in /var/www/master/htdocs
and reseller is hosted in /var/www/reseller/htdocs

I have tried
try_files $uri, $uri/ …/…/master/htdocs/$uri
…/…/master/htdocs/$uri/ =404;

This was attractive because I only named the reseller once in the server
line. Sadly it doesn’t pick up the master files even though all
directories have read permissions.

I have tried jumping locations…
root /var/www/reseller/htdocs;
try_files $uri $uri/ @master
location @master {
root /var/www/master/htdocs;
try_files $uri $uri/ @reseller;
location @reseller {
root /var/www/reseller_X/htdocs;
try_files /index.php?$args;

Oh so near. This served static master files OK, but not master php
files! I never got index.php called. Missing files
and master php files produced “No input file specified.”

What is the correct approach for what I want to do?