在CakePHP中,我想创建一个从我的站点指向另一个站点的自定义URL。
示例:example.com/google会重定向到http://www.google.com
我是一名自学成才的CakePHP新人,无法弄清楚步骤。从我的作业来看,我想我可以在config / routes.php中创建一个到控制器/动作的路径,但是我没有在控制器中创建动作的正确术语。
答案 0 :(得分:12)
如果您想直接将控制台重定向到外部网址,我们可以直接使用
$this->redirect('http://www.google.com');
来自我们的控制器。它会将您重定向到上述地址。这完全没问题。
答案 1 :(得分:3)
您不想要“重定向”,您想要创建超链接。
使用Cake的内置Html助手。
在你的控制器......
var $helpers = array( 'Html' );
在你看来......
echo $this->Html->link( 'Google link!', 'http://www.google.com/' );
“重定向”通常用于指代在服务器端重定向脚本。例如,在用户填写联系表单后,您可能希望通过电子邮件向自己发送详细信息,然后将用户重定向到“成功”!具有以下控制器代码的页面
$this->redirect( '/contact/success' );
答案 2 :(得分:1)
使用CakePHP HTML帮助是最好的选择。
echo $this->Html->link('Link Text Here', 'http://www.anywebsiteyouwant.com);
如果它很简单,你可以直接使用HTML。
答案 3 :(得分:0)
您需要的是:
Router::redirect('/posts/*', 'http://google.com', array('status' => 302));
这会将HTTP状态为302重定向/ posts / *到http://google.com。 见http://book.cakephp.org/2.0/en/development/routing.html