Laravel中的多个域和域特定数据库查询

时间:2016-03-19 14:50:36

标签: php mysql laravel laravel-5

所以我们一直在开发一个laravel的内容管理系统,一切都已完成。我们的计划是将其作为可下载的解决方案提供给客户,但现在情况发生了变化,我们决定将其作为SAAS提供。由于它将由多个客户使用,他们将使用他们自己的域或我们的子域,我想出了以下解决方案。

  1. 检测域或子域并针对数据库进行查询
  2. 从存储域
  3. 的表中获取相关ID
  4. 在会话或全局变量中设置id
  5. 使用该密钥获取网站设置
  6. 对于数据库的所有后续查询,添加默认位置('domain_id',$ idOfDomain),以避免不同客户的用户混淆数据
  7. 我不知道这是不是最好的方法,但目前我觉得这是解决方案。现在的问题是我不知道

    1. 如何在执行控制器中的代码之前从数据库加载域ID和设置。就像laravel中的配置文件一样
    2. 我尝试在模型上设置默认密钥,但它没有太大成功,我想知道如何在所有模型中设置和检索域ID,因为编辑控制器中的所有代码将耗费太多时间
    3. 此外,如果某人有更好更安全的解决方案,那么上面的那个请分享。

      谢谢:)

1 个答案:

答案 0 :(得分:1)

看看delatbabel / site-config软件包,它听起来像是你想要的大部分内容。在packagist或github上搜索。它将根据数据库内容预先填充laravel配置数据,具体取决于浏览器指向的域。