CakePHP重定向到外部URL

时间:2011-11-30 19:59:53

标签: cakephp

在CakePHP中,我想创建一个从我的站点指向另一个站点的自定义URL。

示例:example.com/google会重定向到http://www.google.com

我是一名自学成才的CakePHP新人,无法弄清楚步骤。从我的作业来看,我想我可以在config / routes.php中创建一个到控制器/动作的路径,但是我没有在控制器中创建动作的正确术语。

4 个答案:

答案 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