我有一个 Slim 4 应用程序正在运行,并将一些重复的 url 参数设置为基本路径,以便在 url 生成中不显示它。
请求流:
- 调用--->通过 Varnish 代理
http:demo.xyz?p1=a
重写http://slim.app/url/demo.xyz?p1=a
http://slim.app/url/demo.xyz?p1=a
直接拨打
两个电话都需要工作。
在中间件中,我设置/url/demo.xyz
为基本路径,因此生成的 URL 是http://demo.xyz?p1=a
.
这样做的问题是:
- 基本路径不被识别
routes.php
为传递参数的东西,因此url/abc
不匹配。 - 我仍然需要
url
参数的值才能在 Slim 应用程序中获取一些东西。 - 我的路由需要匹配此结构才能与两个请求流一起使用。
$app->group('/url/{url}', function (RouteCollectorProxy $group) {
$group->get('[/[/city/{city}]]', IndexAction::class)->setName('home');
//...
});
有什么想法可以让它发挥作用吗?
这与放置在这里的问题有关。