我想访客用户可以访问主页但在内置身份验证过程中laravel重定向到登录页面.我怎样才能让访客用户访问主页?
我的routes.PHP:
Route::group(['middleware' => 'web'],function () { Route::auth(); Route::get('/','HomeController@index'); Route::get('/insert','HomeController@insertform'); Route::get('/job/{id}','JobsController@show'); Route::get('/city/{city}','JobsController@city'); Route::post('/insert','HomeController@insert'); Route::get('/cityinsert','HomeController@cityinsert'); Route::post('/cityinsert','HomeController@cityinsertpost'); });
和authenticate.PHP
class Authenticate { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @param string|null $guard * @return mixed */ public function handle($request,Closure $next,$guard = null) { if (Auth::guard($guard)->guest()) { if ($request->ajax()) { return response('Unauthorized.',401); } else { return redirect()->guest('login'); } } return $next($request); } }
这是我的kernel.PHP
class Kernel extends HttpKernel { /** * The application's global HTTP middleware stack. * * These middleware are run during every request to your application. * * @var array */ protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,]; /** * The application's route middleware groups. * * @var array */ protected $middlewareGroups = [ 'web' => [ \App\Http\Middleware\EncryptCookies::class,\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,\Illuminate\Session\Middleware\StartSession::class,\Illuminate\View\Middleware\ShareErrorsFromSession::class,\App\Http\Middleware\VerifyCsrfToken::class,],'api' => [ 'throttle:60,1',]; /** * The application's route middleware. * * These middleware may be assigned to groups or used individually. * * @var array */ protected $routeMiddleware = [ 'auth' => \App\Http\Middleware\Authenticate::class,'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,]; }
从HomeController构造中删除中间件:
class HomeController extends Controller { /** * Create a new controller instance. * * @return void */ public function __construct() { //$this->middleware('auth'); } }