当我在Laravel 5.2中认证时,我无法访问关于页面
我有一个小问题,它会变得很大 我有4页当我在Laravel 5.2中认证时,我无法访问关于页面,laravel,authentication,laravel-blade,laravel-middleware,Laravel,Authentication,Laravel Blade,Laravel Middleware,我有一个小问题,它会变得很大 我有4页 about.blade.php(每个人都可以访问这个)home.blade.php (安全页面需要身份验证)login.blade.php register.blde.php 我有一个布局:app.blade.php my route.php是这样的: Route::get('/', function () { return view('welcome'); }); Route::get('/about', 'AboutController@
- about.blade.php(每个人都可以访问这个)home.blade.php
(安全页面需要身份验证)login.blade.php register.blde.php
Route::get('/', function () {
return view('welcome');
});
Route::get('/about', 'AboutController@index');
Route::auth();
Route::get('/home', 'HomeController@index');
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
class AboutController extends Controller {
public function __construct() {
}
public function index() {
$data = 'some text from index page';
return view('pages.about', compact('data'));
}
}
@if (Auth::gest())
<li><a href="{{ url('/login') }}">Login</a></li>
<li><a href="{{ url('/register') }}">Register</a></li>
@else
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
{{ Auth::user()->username }} <span class="caret"></span>
</a>
<ul class="dropdown-menu" role="menu">
<li><a href="{{ url('/profile') }}">Profile</a></li>
<li><a href="{{ url('/password') }}">Change password</a></li>
<li class="divider"></li>
<li><a href="{{ url('/logout') }}"><i class="fa fa-btn fa-sign-out"></i>Logout</a></li>
</ul>
</li>
@endif
我的AboutController是这样的:
Route::get('/', function () {
return view('welcome');
});
Route::get('/about', 'AboutController@index');
Route::auth();
Route::get('/home', 'HomeController@index');
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
class AboutController extends Controller {
public function __construct() {
}
public function index() {
$data = 'some text from index page';
return view('pages.about', compact('data'));
}
}
@if (Auth::gest())
<li><a href="{{ url('/login') }}">Login</a></li>
<li><a href="{{ url('/register') }}">Register</a></li>
@else
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
{{ Auth::user()->username }} <span class="caret"></span>
</a>
<ul class="dropdown-menu" role="menu">
<li><a href="{{ url('/profile') }}">Profile</a></li>
<li><a href="{{ url('/password') }}">Change password</a></li>
<li class="divider"></li>
<li><a href="{{ url('/logout') }}"><i class="fa fa-btn fa-sign-out"></i>Logout</a></li>
</ul>
</li>
@endif
您有输入错误(没有gest()
方法),因此请使用guest()
而不是gest()
:
这是我的AboutController:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
class AboutController extends Controller {
public function __construct(){
//$this->middleware('auth');
//$this->middleware('auth', ['except' => 'index']);
}
public function index() {
$data = 'Some data from About Controller';
return view('pages.about', $data);
}
我只在使用php artisan make:auth生成auth后添加了这个AboutController
因此,当我尝试访问时,我得到了一个错误,就像您必须在该页面中也使用中间件auth一样我找到了解决方案:)
我想这是因为我的旧版本的PHP,我有PHP版本:5.5.12
我看到laravel在那里的网站上要求最低版本,所以我将我的PHP版本更改为5.6.25,并且一切看起来都很好:)我仍然存在问题,我也尝试了Auth::check(),是的,但这是另一个问题。请查看日志中的/storage/logs/laravel.log
,告诉我您到底遇到了什么错误,然后我将能够帮助您。[2016-11-03 00:34:28]local.error:exception“Symfony\Component\Debug\exception\FatalErrorException”,并显示消息“已达到最大函数嵌套级别“100”,正在中止!”在C:\wamp\www\laravel-lab\crud-app3\vendor\laravel\framework\src\illusted\Foundation\AliasLoader.php:63堆栈跟踪:#0 C:\wamp\www\laravel-lab\crud-app3\vendor\laravel\fra…………中,错误似乎与Composer autoloader有关。尝试运行composer dumpautoload