2016-06-08 50 views
0

我在Laravel有一个应用程序,我不想为每个客户端单独安装它。所以我需要从子域中检测客户端并根据它来加载它们的配置。Laravel域特定配置

我该如何从Laravel 5.2那里做到这一点?欣赏你有经验的答案。我的方法是好的还是应该分开安装?

其实我需要检测的客户,他登录了。所以我可以加载不同的登录查看与标识等各客户

+0

尝试寻找一些'多tenant'包'Laravel '? – linuxartisan

回答

1

这是很好的做法,以保持所有的客户敏感CONFIGS在.env文件,并使用DotEnv因为它does Laravel

例如

CLIENT 1 .env

CLIENT_NAME=Nick 
[email protected] 

客户机程序.env

CLIENT_NAME=Tom 
[email protected] 

然后在你的config/app.php例如

'client_name' => env('CLIENT_NAME', 'Here you can set default value'), 

'client_email' => env('CLIENT_EMAIL', 'Here you can set default value'), 

现在您可以访问他们像

$clientName = config('app.client_name'); 

$clientEmail = config('app.client_email'); 
+0

那么我可以为每个子域使用单独的.env文件吗? – Namal

+0

你能更清楚地解释你试图达到什么目的吗? – huuuk

+0

嗨@huuk,其实我需要在他登录前检测客户端。所以我可以为每个客户端加载不同的登录视图,标识等。 – Namal