Поддельный URL Shortener
Я хочу перенаправить 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.
Как бы я настроить код, чтобы сделать выше?
1 ответ
Решение
Router::connect - это способ соединения одного маршрута с другим без полного перенаправления.
Если вы хотите перенаправить пользователя и раскрыть его, вы можете использовать Router:: redirect (). Он автоматически установит статус 301.
$routes->redirect(
'/g/:id',
['controller' => 'Jobs', 'action' => 'view'],
['pass' => ['id'], 'persist' => true]
);