Laravel如何实现干净的URL并将其重定向到控制器


How does Laravel implement clean URL and redirect them to Controllers

标题说得很好。。。Laravel如何实现干净的URL并将它们重定向到正确的控制器。

像CakePHP这样的一些框架使用.htaccess将所有内容重定向到FrontController,然后FrontController发送请求,但laravel不使用.htaccess,所以我有点困惑。

Laravel使用了"路由"的概念,其中所有干净的url通常被定义并映射到将解析为视图的东西,例如控制器操作、匿名函数、纯字符串等

每个请求都将被位于以下位置的文件捕获:public/index.php(由位于同一位置的.htaccess文件完成)。这个index.php文件将对Laravel框架进行boostrap或说明,并且Laravel将运行您的代码。它是如何完成的路由

路由配置存储在位于app/routes.php的文件中,其中的路由可能如下所示:

Route::get('/users',            'UserController@showUsers');
Route::get('/users/create',     'UserController@createUser');
Route::post('/users/create',    'UserController@processCreateUser');
Route::get('/users/edit/{id}',  'UserController@createUser');
Route::post('/users/edit/{id}', 'UserController@processCreateUser');

有关路由的更多信息,请参阅文档。我强烈建议你阅读这些文档,因为路由在Laravel中非常强大。

Laravel站点使用public/文件夹作为其文档根目录。你会在里面找到.htaccess文件。