0

我想重定向www.myhost.com/g/:idwww.myhost.com/jobs/view/:id. 目前,以下代码可以做到这一点:

$routes->connect(
    '/g/:id',
    ['controller' => 'Jobs', 'action' => 'view'],
    ['pass' => ['id'], 'status' => 301, 'persist' => ['id']]
);

但是,在地址栏中它仍然显示www.myhost.com/g/:id. 我希望它显示完整的 URL ( www.myhost.com/jobs/view/:id),而不是“缩短”的 URL。

我将如何调整代码来执行上述操作?

4

1 回答 1

1

Router::connect是一种将一条路由连接到另一条路由的方式,无需完全重定向。

如果您想要重定向用户并将其暴露给他们,您可以使用Router::redirect()。它会自动设置 301 状态。

$routes->redirect(
    '/g/:id', 
    ['controller' => 'Jobs', 'action' => 'view'], 
    ['pass' => ['id'], 'persist' => true]
);
于 2018-06-25T15:21:34.070 回答