当我们想要通知客户端应用程序已移动此URL时,重定向路由非常有用.可以使用以下函数重定向URL.
static Cake\Routing\Router::redirect($route, $url, $options =[])
上述函数有三个参数 :
描述路线模板的字符串.
要重定向到的网址.
一个数组,该路由与正则表达式的路径中的命名元素相匹配,该元素应匹配.
在 config/routes.php 文件中进行更改,如下所示.在这里,我们使用了之前创建的控制器.
config/routes.php
<?php use Cake\Core\Plugin; use Cake\Routing\RouteBuilder; use Cake\Routing\Router; Router::defaultRouteClass('DashedRoute'); Router::scope('/', function (RouteBuilder $routes) { $routes->connect('/generate2', ['controller' => 'Tests', 'action' => 'index']); $routes->redirect('/generate1','http://IT屋.com/'); $routes->connect('/generate_url',['controller'=>'Generates','action'=>'index']); $routes->fallbacks('DashedRoute'); }); Plugin::routes();
访问以下网址执行上述示例.
URL 1 - http://localhost:85/CakePHP/generate_url
URL 2 - http://localhost:85/CakePHP/generate1
网址3 - http://localhost:85/CakePHP/generate2
您将被重定向到 http://it1352.com