diff --git a/data/.gitignore b/data/.gitignore new file mode 100644 index 0000000..c96a04f --- /dev/null +++ b/data/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore \ No newline at end of file diff --git a/models/LoginForm.php b/models/LoginForm.php index ba3fa60..a4f8bb7 100644 --- a/models/LoginForm.php +++ b/models/LoginForm.php @@ -50,7 +50,7 @@ public function validatePassword($attribute, $params) if ($user) { $user -> addFailTry(); } - $this->addError($attribute, 'Incorrect username or password.'); + $this->addError($attribute, 'Неверные данные.'); } } } @@ -71,7 +71,7 @@ public function validateFail2Ban($attribute, $params) $fail = $user -> getFailData(); if ($fail['tries'] >= 3) { - $this->addError($attribute, 'You are banned. Try after ' . ceil(($fail['timestamp'] + 300 - time()) / 60) . ' minutes.'); + $this->addError($attribute, 'Попробуйте еще раз через ' . ($fail['timestamp'] + 300 - time()) . ' секунд.'); } } } diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..66f98c4 --- /dev/null +++ b/readme.md @@ -0,0 +1,25 @@ +# Демо проект - авторизация + +## Требования + +1. Операционная система Linux +1. Nginx, PHP-FPM via socket +3. Composer + +## Установка + +1. Код проекта должна располагаться в директории `/var/www/demo_auth` +2. В файле `/etc/nginx/nginx.conf` в секции `http` нужно подключить файл `/var/www/demo_auth/config/nginx.conf` +3. Перезапустить `nginx` +4. В файле `/etc/hosts` нужно прописать `127.0.0.1 auth.local` +5. Запустить в директории проекта `composer install` +6. Открыть в браузере `auth.local` + +## Основные моменты демонстрационного проекта + +* Форма авторизации с двумя полями логина и пароля +* После авторизации показывается страница профиля с приветствием с указанием логина пользователя, форма логина недоступна +* После выхода страница профиля перенаправляет на страницу входа +* После 3 подряд неверных вводов пароля пользователя банит на 5 минут +* Базы данных не используются, все данные хранятся в текстовых файлах +* Использован фреймворк Yii 2