Catalyst, redirect и https

Serg V. Gulko s.gulko at gmail.com
Fri Nov 11 13:25:06 PST 2011


Ну, у меня там достаточно много внутренних редиректов, которые не
хотелось бы выносить на клиентскую сторону:)
В Птн, 11/11/2011 в 22:41 +0200, Dmitrii пишет:

> можно сделать альтернативный вариант:
> 
> отправить ajax запрос на javascript, получить результат и сделать редирект на javascript'е
> 
> 
> 
>  --- Исходное сообщение ---
>  От кого: "Serg Gulko" <s.gulko at gmail.com>
>  Кому: "Kiev Perl Users Group" <kiev-perl-users-group at googlegroups.com>
>   Дата: 11 ноября 2011, 20:54:50
>  Тема: Catalyst, redirect и https
>  
> 
> 
> > Есть приложение на Catalyst, запущено под FastCGI, в качестве front-
> > end-а используется nginx.
> > При использовании $c->response->redirect($c->uri_for("/cool_place"));
> > backend всегда делает редикерк по http, в то время как на nginx-е у
> > нас поднят SSL.
> > Особенно неприятно это проявляется при операциях типа Logout, когда
> > пользователь явно был в защищенной зоне, послал запрос типа /logout,
> > который имел такой вот вид:
> > 
> > $c->log->info('Logout');
> > $c->logout;
> > 
> > $c->response->redirect($c->uri_for("/"));
> > 
> > и видит чуденсую ошибку.
> > 
> > Сейчас я решил этот вопрос явным указанием того, что схема у нас
> > https:
> > 
> > $c->log->info('Logout');
> > $c->logout;
> > 
> > my $uri = $c->req->base();
> > $uri->scheme("https");
> > $c->req->base($uri);
> > 
> > $c->response->redirect($c->uri_for("/"));
> > 
> > Но вот что-то мне подсказывает, что такой суровый хардкод не очень
> > красив. По странным причинам Catalyst::Plugin::RequireSSL тоже не
> > сильно помог.
> > Кто сталкивался с такой проблемой и знает как решить ее малой кровью?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/kiev-pm/attachments/20111111/4b341e54/attachment.html>


More information about the Kiev-pm mailing list