2016-07-05 33 views
0

我目前正在將我的瀏覽器遊戲從我自己的PHP-MVC框架遷移到Laravel框架。我在構建網站時遇到了一些麻煩,我不知道最好的方法是什麼。我應該如何構建主頁和遊戲服務器?Laravel的遊戲網站結構

- www.homepage.com (driven by Laravel) 
-- /game/s1 (subfolder, so it's driven by the same Laravel instance) 
-- /game/s2 (..) 
-- /game/s3 (..) 
-- ... 


- www.homepage.com (driven by Laravel) 
- s1.homepage.com (pointing to the homepage Laravel instance) 
- s2.homepage.com (..) 
- s3.homepage.com (..) 
- ... 


- www.homepage.com (driven by Laravel) 
- s1.homepage.com (driven by a new Laravel instance) 
- s2.homepage.com (..) 
- ... 

好,第三個選項是可能的,但可笑的,因爲你必須安裝laravel每個遊戲服務器。所以還有兩個選擇。

第一個將所有內容合併到一個域中,但它可能非常非常複雜。

第二個選項也是一個選項,我看到一些人在使用它,但我不明白你爲什麼要這樣做。因爲相同的Laravel實例正在處理所有事情。唯一的區別是你指向一個子域而不是子文件夾。

我在這裏錯過了什麼嗎?想聽聽你的想法。

回答

2

Laravel提供子域路由 - 因此無需爲您的「服務器」或遊戲創建子文件夾。

你可以找到更多的信息在這裏https://laravel.com/docs/5.2/routing#route-group-sub-domain-routing

基本上你可以使用這個片段

Route::group(['domain' => '{server}.homepage.com'], function() { 
    // inline function - should probably be a controller here 
    Route::get('game', function ($server) { 
    // now you have access to $server which is your s1, s2 
    }); 
}); 

這樣做,你將只需要讓你的子域名指向你laravel公用文件夾,一切都應該工作。