2014-01-31 3 views
2

У меня есть один файл для просмотра TestController. И на этом я добавил форму комментария (адрес страницы, на которой находится моя страница, является www.example.com/test/ вид/слизняк) в настоящее время комментариев формы размещение на URL www.example.com/comments/add действий комментария успешно добавлять после того, я написал (в комментариях/добавить метод)

  $this->redirect($this->referer()); 

то, что я ожидал, что это следует перенаправить на www.example.com/test/view/slug. его перенаправление на этот адрес на моем локальном хосте, но когда я развернуть мое приложение это перенаправление не перенаправлять Собственость он перенаправляет на URL www.example.com/comment/www.example.com и дает ошибка

Error: The requested address '/comments/www.example.com' was not found on this server. 
+0

проверить свои маршруты.php может возникнуть проблема. – Abhishek

+0

Я написал только один маршрут в route.php, который используется для перенаправления домашней страницы. Router :: connect ('/', array ('controller' => 'users', 'action' => 'home', 'home')); @Abhishek: есть ли какие-то проблемы, тогда он не должен работать и на моем местном. –

+0

да, вы правы, но могут быть возможности проверять ваши файлы .htaccess как на локальной, так и на вашем живом сервере. Вы проверили, какое значение дает это $ this-> referer(). – Abhishek

ответ

9

Попробуйте это

$this->redirect(Router::url($this->referer(), true));

Это будет использовать ПОЛНОЕ URLs в переадресации и это может решить вашу проблему с добавления переадресации к текущему URL, а не просто использовать его.

Смежные вопросы