使用文件夹结构和一个数据库构建多域网站

I am wanting to build a new app. Eventually I want to make it possible for other users to fire up their own version of the app under their own domain name. I am not even sure if that is possible to use the same database and app structure and just create a new folder and files on the fly, but use the same authentication, database, etc.

What would this type of setup be called? I would like to research it further.

In general terms this is a "multi-tenant" application, that is you have one code-base that serves multiple tenants each of which may use a different subdomain or possibly entirely different domains. There's many valid ways of organizing your application to accommodate this, both internally and in how that split is expressed to your clients.

In database terms it means that you try to avoid "root level" records, that instead you always associate them with some kind of account, client, or tenant record. For example, a single-tenant site can presume that a user is always associated with the site, but in a multi-tenant system that user might be bound to one account and may only be able to log-in via a particular domain and/or URL.

Inside a framework like Laravel you might need several components to accommodate this, but it is achievable.