Let"s start with why you need to load the configuration dynamically:
We are working on a multi-site service. For example, user username1 owns the site https://username1.example.com. Now I have solved this step by username under the folder with the same name:
if ($http_host ~* "^(.*)\.example\.com$") {
set $root /var/html/subdomains/$1;
}
root $root;
as you can see above, all the subsites are under the / var/html/subdomains folder.
but there is a new problem. My subdomain name system requires support for cname resolution, that is, the subdomain https://username1.example.com can be opened through the user"s own registered domain name https://username1-domain.com.
therefore, users can parse username1-domain.com to username1.example.com through cname, but this is a user behavior, so it is necessary to dynamically resolve the request of username1-domain.com to the server configuration of / var/html/subdomains/username1 in the system, and it is best to provide https support, that is, users upload their own https certificate in the background and automatically configure it to the configuration of nginx. So that https://username1-domain.com can be accessed normally.
at this time, the domain name registered by the user has no rules, and the folder cannot be mapped through the above code block.
so what should I do if the above dynamic resolves any domain name to a folder on the server?
Thank you.
