我们都知道laravel
的路由支持子域名。如下
Route::group(array('domain' => '{account}.local.com'), function()
{
Route::get('user/{id}', function($account, $id)
{
//
});
});
但是我现在碰到一个问题,求就是本地开发环境、测试环境和线上生产环境是不同的子域名。
比如说:
线下:account.local.com
测试:account.test.com
生成:account.production.com
我除了写三遍路由规则意外。不知道有没有让一个路由规则中同时支持这3个子域名的方法?
Route::group(array('domain' => '{account}.local.com'), function()
{
// route
});
Route::group(array('domain' => '{account}.test.com'), function()
{
// route
});
Route::group(array('domain' => '{account}.production.com'), function()
{
// route
});
-------------------------------分割线-----------------------------------------
如下就可以了。
Route::group(array('domain' => 'account.{env}.com'), function()
{
// route
});
因为我还有其他域名,不想混合通用route
所以就需要区分开
Route::group(array('domain' => 'help.{env}.com'), function()
{
// route
});
三个环境的路由配置不需要配置
domain
,只要你三个域名都是指向Laravel,自然就共用了是可以支持的,你自己测试了没?
也可以在配置文件里面做区分
.env