2014-12-11 9 views
0

某處在我app/start/global.php我有如何將Laravel應用程序置於維護模式並仍然允許某個用戶?

App::down(function() 
{ 
    return Response::make("Be right back!", 503); 
}); 

如果我在CMD做

php artisan down我的整個網站將關閉。

恐怕我會禁用所有訪問者including管理員。

我不想那樣。我仍然想讓自己在那裏,因爲我必須創建/上傳一些內容到我的網站。

有沒有辦法讓我自己和其他管理員用戶訪問,但不是客戶端?

感謝

回答

3

你可以存儲你的IP地址和其他管理員IP地址的IP地址白名單陣列,像這樣的:

App::down(function() 
{ 
    $ip = Request::getClientIp(); 
    $allowed = array('192.168.1.7', '192.168.1.8', '127.0.0.1'); 

    if(!in_array($ip, $allowed)) 
    { 
     return Response::view('maintenance', array(), 503); 
    } 
}); 

OR

執行,如果其他檢查基於用戶類型

if (Auth::user()->type == "Admin"){ 

..... Allow 


}else{ 

..... NOT Allow 

} 
相關問題