我想建立一个网站,每个用户在我的网站中拥有自己的子域名。但除此之外,我需要子域来管理我的网站。
所以,我需要的是:
mysite.com ---> main web
admin.mysite.com ---> for administrator my web
blog.mysite.com ---> for artikel my web
member.mysite.com ---> for main account
*.mysite.com ---> for users
我正在使用laravel 5.4 那么,我怎么写我的路线?
Route::group(array('domain' => '{subdomain}.mysite.com'), function() {
//
});
之前感谢。
答案 0 :(得分:1)
路由文件应首先包含静态子域,并在最后捕获所有子域。订单很重要。
// mysite.com
Route::group([ 'domain' => 'mysite.com' ], function () {
Route::get('/', 'MySiteController@home');
});
// admin.mysite.com
Route::group([ 'domain' => 'admin.mysite.com' ], function () {
Route::get('/', 'MySiteAdminController@home');
});
// blog.mysite.com
Route::group([ 'domain' => 'blog.mysite.com' ], function () {
Route::get('/', 'MySiteBlogController@home');
});
// user subdomains
Route::group([ 'domain' => '{account}.mysite.com' ], function () {
Route::get('/', 'TenantController@home');
Route::get('/user/{id}', 'TenantController@userIndex');
});
示例捕获所有控制器
class TenantController {
public function home($account)
{
return 'This is home for account '.$account;
}
public function userIndex($account, $id)
{
//
}
}