我的Laravel项目有问题。我创建了一个管理路由组(domain.co/admin/)。根/admin/
曾经在工作,然后我又添加了几页,此后更新了作曲家,安装了doctrine / dbal,并安装了chart.js。现在由于某种原因,/admin/
路由不再起作用,但所有其他路由都完全正常工作。
我的web.php路由如下:
Route::get('/', function () {
return view('home');
});
Auth::routes(); // tried commenting this out
Route::middleware(['web','auth','rolecheck:Super'])->prefix('admin')-
>group(function(){
Route::get('/', 'AdminController@index');
Route::get('/test', 'AdminController@index');
Route::get('/test2', 'AdminController@test');
....
});
...
还有更多可行的路线组
/admin/
给我一个权限错误。 /admin/test/
/admin/test2/
工作正常
这是控制器
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class AdminController extends Controller
{
public function index(){
echo '2';
//return view('admin.dashboard');
}
public function test(){
echo '1';
}
}
.htaccess不会显示任何奇怪的内容(laravel中的默认设置)。我也尝试过清除缓存。
在/ etc / httpd conf文件中什么也没找到。
我已经很疲倦地浏览了“ admin”一词的所有代码,找不到指向其拒绝其说法的任何内容。
如果我将前缀更改为'admins',那么它可以工作,因此我猜测laravel的某些部分会阻止admin /路由。我还能在哪里看到它在哪里被阻止。
答案 0 :(得分:2)
检查公用文件夹中是否有“ admin”文件夹,然后重命名。就我而言,这就是这种行为的原因。folders structure
答案 1 :(得分:0)
检查您的laravel目录中的config / auth文件,并检查默认情况下的警卫和提供程序数组。
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'admins' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
],