1、路由的地址一般为:控制器/操作方法构成
//默认index控制器
Route::rule('/', 'index');
//控制器/操作方法
Route::rule('details/:id', 'Address/details');
2、支持多级控制器,并且支持路由到相应的地址
//目录为:app\controller\group
namespace app\controller\group;
//地址为:app\controller\group
http://localhost:8000/group.blog/details/id/5
//支持多级路由
Route::rule('details/:id', 'group.Blog/details');
3、对于地址,还有一种完整路径的方式去执行操作方法:完整类名:@操作方法
4、另一种静态方式:完整路径支持这种发给发的路由地址:完整类名::静态方法
Route::rule('ds/:id', '\app\controller\Address@details');
5、路由可以通过::redirect()方法实现重定向跳转,第三参数为状态码
Route::redirect('ds/:id', 'http://localhost/', 302)
1、设置路由的适合,可以设置相关的方法进行,从而实施匹配检测和行为执行
2、ext方法作用是检测URL后缀,比如我们强制所有URL后缀为.html
Route::rule('details/:id', 'address/details')->ext('html');
Route::rule('details/:id', 'address/details')->ext('html|shtml');
3、https 方法作用是检测是否为 https 请求,结合 ext 强制 html 如下;
Route::get('details/:id', 'address/details')->ext('html')->https();
4、如果想让全局统一配置URL后缀的话,可以在config/route.php中设置
5、具体值可以是单个或多个,也可以是空字符串,false禁止后缀
//设置false 为禁止后缀,空允许所有后缀
'url_html_suffix' => 'html',
6、denyExt方法作用是禁止某些后缀的使用,使用后直接报错
Route::rule('details/:id', 'address/details')->denyExt('gif|jpg|png');
7、domain方法是检测当前的域名是否匹配,完整域名和子域名均可
Route::rule('ds/:id', 'Address/details')->domain('localhost');
Route::rule('ds/:id', 'Address/details')->domain('news.abc.com');
Route::rule('ds/:id', 'Address/details')->domain('news')
需要在host文件更改 127.0.0.1 =》new.abc.com
8、11. 如果你想统一配置多个参数,方便管理,可以使用 option 方法数组配置
Route::rule('ds/:id', 'Address/details')->option([
'ext' => 'html',
'https' => true
]);