我正在将扩展新闻的realurl配置迁移到路由增强器。realurl配置是和的混合。因此,新闻单一视图的说话 url 以两种不同的方式构建:fixedPostVars
postVarSets
- https://example.org/my-news-list-page/single-view-page/my-news-title
- https://example.org/my-news-list-page/single-view-page/news/my-news-title(包括一个名为news
postVarSets
的前缀)
现在有了路由增强器,我希望所有链接都没有前缀,但仍然能够解析有或没有前缀的链接。
在我的路由增强器配置中,我以这个确切的顺序添加了以下两个路由路径,这似乎工作得很好:
- { routePath: '/news/{news-title}', _controller: 'News::detail', _arguments: {'news-title': 'news'}}
- { routePath: '/{news-title}', _controller: 'News::detail', _arguments: {'news-title': 'news'}}
以相反的顺序,这不起作用,因为链接是使用前缀构建的。我想知道 routePaths 的处理顺序是否可靠。以这种方式使用 routePaths 是个好主意吗?或者我应该更好地在网络服务器级别使用重定向,这会更有效?