我想将www.myhost.com/g/:id
重定向到www.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。
我如何调整代码以完成上述操作?
答案 0 :(得分:1)
Router::connect是一种将一条路由连接到另一条路由而无需完全重定向的方法。
如果您要重定向用户并将其暴露给用户,则可以使用Router::redirect()。它会自动设置301状态。
$routes->redirect(
'/g/:id',
['controller' => 'Jobs', 'action' => 'view'],
['pass' => ['id'], 'persist' => true]
);