我有几个 PHP Laravel 项目(restful API、管理应用程序、客户端应用程序)。API 只使用一个数据库。该项目是一些公司可以使用的某种应用程序。他们可以访问管理面板、客户端网页,可以使用自己的 API,可以创建自己的用户、权限等。如果这个项目将被一个客户使用是没有问题的,但我打算把这个应用程序卖给很多人。我将负责更新、托管、配置等。我想知道如何使它成为最好的方法,我有一些想法。
- 每次有人从我这里购买时,我都考虑在服务器上克隆该应用程序。这需要在服务器上设置一个新的子域和大量的磁盘空间。不确定。
- 或者可能克隆应用程序并与供应商、node_modules 等符号链接共享一些文件。
- 另一个想法是将它作为一个项目,为不同的客户提供许多数据库,但是如何在 Laravel 中以最好的方式制作它?我需要一些动态的方法来更改数据库连接(我希望每个客户端都有单独的数据库),我不确定与会话、缓存等的冲突。
- 也许单独的数据库是一个错误的想法,最好拥有一个数据库并将其作为一个项目并出售对项目的访问权限?但随后我需要将客户的数据保存在一个数据库中。
你怎么看?