簡體   English   中英

重定向toUrl不起作用(zf2)

[英]Redirect toUrl does not work (zf2)

我在Zend Framework 2中遇到重定向問題。當用戶輸入http // mysite.test / lorem這樣的URL時,他將被重定向到http // mysite.test / news / view / lorem-ipsum。

編碼:

$redirecttable = $sm->get('Redirect\Model\RedirectTable');
$route = $redirecttable->getRedirectByRoute($this->params()->fromRoute('page'));
if($route) {
    // $route->getToroute() returns "news/view/Lorem-Ipsum"
    return $this->redirect()->toUrl( $route->getToroute() );

}

我在這里犯了一個愚蠢的錯誤嗎?

toUrl方法重定向到一個完整的url,但你發送的是url的一部分。 您可以使用$this->redirect()->toRoute($route,$params)重定向到路由。 參考

如果要使用toUrl方法,請嘗試以下代碼:

return $this->redirect()->toUrl( $this->getRequest()->getUri()->toString().$route->getToroute() );

使用toRoute()而不是toUrl()

return $this->redirect()->toRoute($route->getToroute())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM