server_name "~(?.*?)\.(?[-\w]+\.domain\.com)$";
дальше будет доступна переменная $subdomain, можете ей пользоваться при составлении пути, например:
set $root_path "/var/www/runashop2/$subdomain/pp2/public";
root $root_path;
Это выдраный кусок из нашего конфига и переделанный (дабы не светить лишнего), так что сходу может не заработать, но суть показана, используйте регулярки с именоваными параметрами, и затем используйте то что совпало в пути
nginx.org/en/docs/http/server_names.html#regex_names тут подробно все описано