CakePHP的重定向路由
2018-01-12 17:06 更新
当我们想告知客户端程序某个网址已被移动时,重定向路由是很有用的。可以使用以下函数进行URL重定向。
static CakeRoutingRouter::redirect($route, $url, $options =[])
上面的函数有三个参数-
描述路由模板的字符串。
一个要重定向到的URL。
一个把路由中定名元素和元素所匹配的正则表达式相搭配的数组。
例
修改下图所示的config/routes.php文件。这里,我们用到了先前创建的控制器。
config/routes.php文件
<?php use CakeCorePlugin; use CakeRoutingRouteBuilder; use CakeRoutingRouter; Router::defaultRouteClass('DashedRoute'); Router::scope('/', function (RouteBuilder $routes) { $routes->connect('/generate2', ['controller' => 'Tests', 'action' => 'index']); $routes->redirect('/generate1','http://tutorialspoint.com/'); $routes->connect('/generate_url',['controller'=>'Generates','action'=>'index']); $routes->fallbacks('DashedRoute'); }); Plugin::routes();
通过访问以下URL执行上面的例子。
URL 1 - HTTP://localhost:85/CakePHP/generate_url
URL 2 - HTTP://localhost:85/CakePHP/generate1
URL 3 - HTTP://localhost:85/CakePHP/generate2
URL 1输出
URL 2输出
你会被重定向到http://tutorialspoint.com
URL 3输出
以上内容是否对您有帮助:
更多建议: