- Yii2, MySQL/MariaDB, jQuery, Bootstrap
- Тип проекта – Basic
- Проект не должен использовать API сторонних серверов
- Миграции - на ваше усмотрение (если нет, нужен будет dump и версия базы базы)
При переходе на главную страницу проекта мы видим форму Input, в которую подставляем любую ссылку. Рядом кнопка "ОК", при нажатии на которую сервис должен проверить
Проверки :
- Валидность URL ссылки (http:: https ну и далее все атрибуты)
- Доступность данного ресурса (если не доступен выводим: Данный URL не доступен)
Если проверка валидности и доступности пройдена - сохраняем ссылку в базе и формируем короткую ссылку + QR кода. Пользователю после нажатия отдаем либо сообщение об ошибке, либо QR код и рядом с ним короткую ссылку (все это происходит через Ajax без перезагрузки страницы)
QR - при наведении камеры телефона на QR код: должна генерироваться ссылка и ее можно открыть (контроллер перехода по ссылки делаем отдельно)
При попытке перейти по короткой ссылке - происходит редирект на необходимый сайт (заложенный при генерации ссылки)
При переходе по ссылки в базе делаем запись, с какого внешнего IP перешел пользователь по этой ссылке (логи) + счетчик, который показывает сколько было переходов Так же необходима инструкция, как развернуть проект и заставить его работать
- Подготовить файлы окружения
.env, basic/.env
- Запуск контейнеров
docker-compose up
- Запуск миграции в контейнере
php yii migrate