これにはルーターを使用します。
例えば
Route::group(array('domain'=>'example.com'), function(){
//Define the routes for example.com
});
Route::group(array('domain'=>'cms.example.com'), function(){
//Define the routes for cms.example.com
});
メンテナンスを容易にするために、コントローラーに名前空間を使用できます。
たとえば、コントローラーフォルダーは次のようになります
App
|
|---Controllers
|-- site
|
|-----HomeController.php
|-- subdomain
|
|-----HomeController.php
今、サイトコントローラーの場合、次のような名前空間を使用します<?php namespace site;?>
サブドメイン コントローラーの場合は、次のような名前空間を使用します<?php namespace subdomain;?>
ルートファイルで、ルートを次のように定義します。
Route::group(array('domain'=>'example.com'), function(){
Route::get('/', array(
'as' => 'index',
'uses' => '\site\HomeController@index'
))
});
サブドメインの場合、
Route::group(array('domain'=>'cms.example.com'), function(){
Route::get('/', array(
'as' => 'cms.index',
'uses' => '\subdomain\HomeController@index'
))
});
単純明快な方法。