Routing 类似CMS的通配符路由与Slim 3

Routing 类似CMS的通配符路由与Slim 3,routing,content-management-system,slim,slim-3,Routing,Content Management System,Slim,Slim 3,我正在Slim 3上为一些项目开发(非常轻量级)CMS。我正在为路由而挣扎。也许这里有人能把我推向正确的方向 管理员可以在后端添加新的前端页面。如果添加页面,则会(自动)创建一个slug。有几个页面(如索引页面)无法删除或编辑(更改slug) 现在我不知道如何设置路由 我想要的示例: www.example.com/ www.example.com/contact.html www.example.com/some-page.html 我能够设置一个通配符路由,但为了让事情更有趣,我也有一些后

我正在Slim 3上为一些项目开发(非常轻量级)CMS。我正在为路由而挣扎。也许这里有人能把我推向正确的方向

管理员可以在后端添加新的前端页面。如果添加页面,则会(自动)创建一个slug。有几个页面(如索引页面)无法删除或编辑(更改slug)

现在我不知道如何设置路由

我想要的示例:

www.example.com/
www.example.com/contact.html www.example.com/some-page.html
我能够设置一个通配符路由,但为了让事情更有趣,我也有一些后端路由:

www.example.com/backend/
www.example.com/backend/dashboard/
$app->get('/[{path:.*}]',函数($request,$response,$path=null){return$response->write($path?'subroute':'index');});
$app->group(“”,function(){
$this->get('/backend/dashboard.html',BackendDashboardController:index')->setName('backend');
});
一旦我也实现了这些,我就会得到以下错误:

Static route "/backend/dashboard.html" is shadowed by previously defined variable route "/(.*)" for method "GET"

非常感谢您的每一个提示。

如果您为“/backend”路径创建组,它应该会起作用


不幸的是,这不起作用。我得到了同样的结果。然后试着改变路线的顺序。我更新了我的例子。Duuude…这完全有效。我不知道订单有多重要。非常感谢你!
$app->group('/backend', function () {
    $this->get('/dashboard.html', 'BackendDashboardController:index')->setName('backend');
});

$app->get('/[{path:.*}]', function($request, $response, $path = null) { return $response->write($path ? 'subroute' : 'index'); });