使用文件夹结构和一个数据库构建多域网站
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.
我想构建一个新的应用程序。 最终,我希望其他用户可以在自己的域名下启动自己的应用版本。 我甚至不确定是否可以使用相同的数据库和应用程序结构,只是动态创建一个新的文件夹和文件,但使用相同的身份验证,数据库等。 p>
这种类型的设置会被调用什么? 我想进一步研究它。 p> div>
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.