对于每个模板渲染,是否有办法让/foo/bar
等网址替换为海湾baseurl/foo/bar
?
答案 0 :(得分:3)
绝对。您可以使用before_routes
对象中的before_dispatch
挂钩(或Mojolicious::App
挂钩)来执行此操作。
app->hook( before_dispatch => sub {
my $c = shift;
unless ($c->req->url->path->to_route =~ m#/baseurl#) {
$c->req->url->path( "/baseurl" . $c->req->url->path->to_string);
}
} );
...
app->start;
答案 1 :(得分:0)
我还无法添加评论,但我只是想添加一下暴徒是正确的 - 使用hooks的示例代码是推荐的URL重写方法:
http://mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#Rewriting