拉拉维尔 5.1 : 路由问题


laravel 5.1 : Route issue

我定义了一条路由:

Route::get('admins', function () {
    return view('admins/index');
});

当我访问localhost/project/public/admins时,项目会正确加载,但是当我访问localhost/project/public/admins/时,只需在admins之后添加/,然后localhost/admins加载不存在并抛出404

试试这个Route::get('/admins'.....)

如果您使用前缀/分组来避免此类问题会好得多。 这是示例

Route::group(['prefix'=>'admin', 'middleware'=>'auth'], function(){
    Route::get('dashboard',                             ['as'=>'user-dashboard','uses'=>'Admin'UserController@dashboard']);
    # User Role Management
    Route::group(['prefix'=>'roles', 'middleware'=>'auth'],function(){
        Route::get('show',                            ['as'=>'roles-show', 'uses'=>'Admin'RolesController@index']);
        Route::get('data',                            ['as'=>'roles-data', 'uses'=>'Admin'RolesController@getData']);
        Route::get('create',                          ['as'=>'roles-create', 'uses'=>'Admin'RolesController@create']);
        Route::post('create',                         ['as'=>'roles-store', 'uses'=>'Admin'RolesController@store']);
        Route::get('edit/{id}',                       ['as'=>'roles-edit', 'uses'=>'Admin'RolesController@edit']);
        Route::post('edit/{id}',                      ['as'=>'roles-update', 'uses'=>'Admin'RolesController@update']);
        Route::post('delete',                         ['as'=>'roles-delete', 'uses'=>'Admin'RolesController@destroy']);
    });
});
为了避免这种类型的错误,您需要配置 .htaccess 文件。

.htaccess configurstion 文件用于运行没有索引.php或公共的文件。