Сокращатель ссылок, возможность менять url сайта по условиям
Сокращатель ссылок, возможность менять url сайта по условиям
1. Цель – создание сервиса для сокращения ссылок.
2. Общие сведения:
Нужно создать сокращатель ссылок типа
Но нужна возможность менять url по условиям:
1. После N – переходов
2. По времени
3. Руками
Так же, возможность привязывать любое доменное имя в качестве домена сокращателя, делая бесконечное число сокращателей.
2. Требования к продукту:
нужен личный кабинет пользователя для создания шотенов
нужен личный кабинет админа для просмотра всех шотенов пользователей и управления пользователями
нужна регистрация (по емэилу и паролю) для пользователей
3. Требования к функционалу админа
просмотр всех пользователей, удаление пользователя, изменение пароля пользователя в форме таблицы
вход в кабинет пользователя и управление всем, чем может управлять пользователь
Страницы админа: список пользователей (с возможностью входа к ним в кабинет), список доменов (с логином владельца), список шотенов (с логином владельца).
4. Требования к функционалу пользователя
добавление и редактирование доменов: пользователь может купить домен у третьего лица, привязать к нашему сервису и на нашем сервисе создавать шотены (любые адреса на этом домене) и прописывать правила переадресации; необходимо вверху страницы написать краткую инструкцию;
нужна возможность выбора одного из двух типов переадресации при создании шотена: 301 редирект, через javascript.
конструктор шотенов: название шотена, выбор домена (выпадающий список), ввод короткого адреса (текстовый инпут), url куда надо передаресовывать (текстовый инпут), тип переадресации (радиобуттон один из двух), правила замены (радиобуттон из трех: "без замены", "по кол-ву переходов", "по времени", во втором и третьем случае давать возможность указать соответстующие настройки кол-ва переходов, времени в часах и в обоих случаях новый URL).
возможность отредактировать шотен в списке шотенов вручную заменив URL куда надо вести, этом можно менять его безлимитное кол-во раз, при любой смене сбрасываются все другие правила (по времени и кол-ву переходов).
столбцы таблицы шотенов: название, URL шотена, URL куда сейчас ведет, кол-во переходов, столбец "управление" с кнопками: кнопка "сменить целевой URL", которая вызывает всплывашку для ввода нового URL'а, кнопка "удалить", кнопка "посмотреть подробную информацию", которая вызывает во всплываше подробную информацию (дата создани + все остальный настройки и правила в этом шотене).
столбцы таблицы список доменов: имя домена, кол-во шотенов с ним, кол-во переходов по всем его шотенам, столбец управления с кнопкой "удалить".
Страницы пользователя: добавление домена, список доменов, конструктор шотенов (для задания сценариев сокращалок ), список шотенов. Страницы добавления можно сделать всплывашками.
5. Используемые технологии
серверная часть – php 7+ (можно использовать любые фрэймворки), БД – PostgresQL (желательно), MySQL (на крайний случай)
клиентская часть – бутстрап (желательно, но не принципиально)
ОС – ubuntu
веб-сервер не важен
6. Дополнительно
а) Мы даем рутовый доступ к нашему виртуальному серверу на simplecloud (на нем только установленная ubuntu), Вы создаете приложение и запускаете его на сервере (это важно, нам нужен код, работающий на севере), мы можем дать домены для тестов.
б) нам нужна краткая инструкция по настройке конфига веб-сервера