2016-03-21 22 views
0

Forrestbe bir laravel uygulaması yerleştirdim. Dağıtılan uygulama, yalnızca kimlik doğrulama ve ara katman yazılımını ('auth' ve 'guest') test etmek için basit bir uygulamadır. Uygulamayı localhost'ta denedim, kimlik doğrulama ve middleware iyi çalıştı. Uygulamamı fortrabbit'te denediğimde, kimlik doğrulaması düzgün bir şekilde çalışıyordu ancak ara katman ile ilgili bir sorun vardı. Ben,Yönlendirme Döngüsü Laravel 5.1 in Fortrabbit

Bu web sayfasında yönlendirme döngüsü var olsun

Ben ana sayfasına giriş her zaman ERR_TOO_MANY_REDIRECTS.

routes.php:

public function handle($request, Closure $next) 
{ 

    if ($this->auth->guest()) { 
     if ($request->ajax()) { 
      return response('Unauthorized.', 401); 
     } else{ 
      return redirect()->guest('/login'); 
    } 

    return $next($request); 
} 

RedirectIfAuthenticated.php 'misafir' katman için: 'auth' katman için

Route::get('/','[email protected]'); 

Route::group(['middleware' => 'guest'], function() { 

    Route::get('login','[email protected]'); 
    Route::post('login','[email protected]'); 

    Route::get('register','[email protected]'); 
    Route::post('register','[email protected]'); 

}); 

Route::group(['middleware' => 'auth'], function() { 

    Route::get('home','[email protected]'); 
    Route::get('logout','[email protected]'); 

}); 

Authenticate.php

public function handle($request, Closure $next) 
{ 
    if ($this->auth->check()) { 
     return redirect('home'); 
    } 

    return $next($request); 
} 

herhangi bir dosya fortrabbit ayarını/var mı olduğunu Bu uygulamayı düzgün bir şekilde çalıştırmak için yapılandırmalı mıyım?

+0

Yetkilendirme ara yazılımınız bana görünüyor. Eğer guest() bunu yaparsa, misafir girişi için yönlendirmezse. Misafirlere izin verilmeyen bir sayfada misafir iseniz giriş yapman gerekmiyor mu? Sonsuz bir döngüdesiniz çünkü bir kez giriş yaptığınızda, artık bir misafir değilsiniz, bu yüzden 'evinize' yönlendirilirsiniz, bu da 'auth' kelimesini kapatır ve sizi giriş yapmaya yönlendirir, bu da sizi yönlendiren 'misafir' i tetikler. ... – sniels

+0

Merhaba Ben bu bir oturum hata https://github.com/laravel/framework/issues/8172 tekrar temiz bir yükleme deneyebilirsiniz olduğunu düşünüyorum? Kale pilotları kale tavşanı içinde ne olacak? Ben sorunu yanlış yerleştirilmiş olduğunu düşünüyorum, 've sonuç hala Authenticate.php dosyayı karşıya Could aynı – Gokigooooks

cevap

0

kaynak, sen ...

sana auth katman gibi görünmelidir sanıyorsun yönlendirir, biz sadece değerini değiştirmek gerekir CACHE_DRIVER aynı zamanda .env dosyasındaki SESSION_DRIVER - memcached dosyasına

0

Kişisel yetkilendirme katman bana kapalı görünüyor.
Konuk() bunu yaparsa, konuk giriş yapamazsa yönlendirir. Misafirlere izin verilmeyen bir sayfada misafir iseniz giriş yapman gerekmiyor mu?
Eğer giriş kez, artık bir misafir olduğunuz için sonsuz bir döngü içinde, o yüzden 'Konukları' tetikler kapalı ve giriş yönlendirir 'kimlik doğrulama', tetikleyiciler 'ev', yönlendirildi olsun hangi Fortrabbit memcache yapılandırma (link) ile config/cache.php değiştirdikten sonra Laravel on Github

public function handle($request, Closure $next) 
{ 
    if ($this->auth->guest()) { 
     if ($request->ajax()) { 
      return response('Unauthorized.', 401); 
     } else { 
      return redirect()->guest('auth/login'); 
     } 
    } 
    return $next($request); 
} 
+0

ben dönüş yönlendirme()' başka deyimi değişti braket. – neemo

+0

@neemo olduğu;> misafir ('/ login') - – sniels

+0

Uygulamayı güncellenmiş Authenticate.php (yukarıda güncellenen) ile [mylara.frb.io] (http://mylara.frb.io) ve hala çözülmemiş olarak yeniden yükledim. – neemo

İlgili konular