В продолжение к
Почему у сервера какой-то левый hostname?
Перестала работать авторизация. Проблема в том, что после успешной валидации происходит редирект на главную, но авторизации не происходит. Причем в консоли firebug следующие странности:
В ответ на post-запрос приходит какая-то левая фраза «Перезагрузите страницу, чтобы получить источник для:
http://site.ru/login»
Код контроллера AuthController:
public function actionLogin() {
if (!Yii::app()->user->isGuest)
$this->redirect(Yii::app()->homeUrl);
$user = new User(User::SCENARIO_LOGIN);
$request = Yii::app()->request;
/*$ajaxRequest = $request->getPost('ajax', false);
if ($ajaxRequest && $ajaxRequest === 'login-form') {
echo CActiveForm::validate($user);
Yii::app()->end();
}*/
$formData = $request->getPost(get_class($user), false);
if ($formData) {
$user->attributes = $formData;
if ($user->validate()) {
Yii::app()->user->setFlash('success', 'Welcome back, ' . Yii::app()->user->email . '!');
//$this->redirect(Yii::app()->user->returnUrl);
$this->redirect(Yii::app()->homeUrl);
}
}
$this->pageTitle[] = Yii::t('site', 'Login');
$this->render('login', compact(array('user')));
}
Началось все после переезда на другой VPS. Сначала думал, что это из-за левого hostname у сервера (была такая проблема), но после его починки ситуация не изменилась.
Куда смотреть?