2016-10-07 22 views
5

Lavelle uygulama URL'si app.laravel.com\{clientName} gibi bir şey olacaktır. Tüm yollar, client_name, örneğin app.laravel.com\{clientName}\home, app.laravel.com\{clientName}\profile'u takip edecektir. Uygulamayı yükleyecek/oluşturacak clientName. appclient katman clientName dizinde dayalı oturumu ayarlanır Ne elde etmek çalışıyorumLaravel uygulamasının dinamik olarak değiştirilme yolu yolu

public function handle($request, Closure $next) { 
    $clientName = explode('/', $request->path())[0]; 
    $client = Client::where('clientName', $clientName)->first(); 

    if(!isset($client->id)) { 
     abort(404); 
    } 

    Config::set('session.path', "/$clientName"); 

    return $next($request); 
} 

yılında

Route::group(['prefix' => '{clientName}', 'middleware' => 'appclient'], function() { 
    Route::get('/', '[email protected]'); 
    Route::post('login', 'Auth\[email protected]'); 
    Route::post('logout', 'Auth\[email protected]'); 
    Route::get('home', '[email protected]'); 
}); 

routes/web.php

. Giriş yaptığımda TokenMismatchException alıyorum.

İlk soru

Ben app.laravel.com\{clientName} gibi dizinde ile url dayalı oturumu saklayabilirsiniz?

İkinci Soru

Ben bu yaklaşım kullanmaktır çalıştı yukarıda ne ayar session.path vardır gördük. Bu mümkün ise, bu sorunu nasıl çözebilirim? Ara katmandaki oturum yolunu güncellemek iyi bir fikir midir?

geri herhangi beslemeyi takdir ya da diğer her seferinde yeni bir üretir oturum sürücüsü olarak benim daha fazla araştırma ise

  • istek oturumu belirteci Redis kullanma

    GÜNCELLEME

    • yaklaşır
  • cevap

    0

    Ne yapıyorum? d, dinamik olarak session.path & session.cookie'u güncelleştirmiştir.

    Config::set('session.path', "$clientName"); 
    Config::set('session.cookie', $clientName.'_laravel_session'); 
    

    Bu, şu anda benim için çalışıyor.

    İlgili konular