52 lines
2.1 KiB
Markdown
52 lines
2.1 KiB
Markdown
# Flask UUID Pages Admin (SQLite)
|
||
|
||
Минималистичное Flask‑приложение с SQLite:
|
||
- Админка доступна только пользователю `ruslan` с паролем `utOgbZ09ruslan` (по умолчанию).
|
||
- В админке можно вставлять HTML и публиковать страницы.
|
||
- Для каждой страницы генерируется UUID‑ссылка `/p/<uuid>`.
|
||
- Неавторизованный пользователь не видит админку и главную страницу (404). Страницы по UUID доступны всем, у кого есть ссылка.
|
||
|
||
## Запуск локально
|
||
|
||
1. Создайте и активируйте виртуальное окружение (опционально):
|
||
|
||
Windows PowerShell:
|
||
|
||
```powershell
|
||
python -m venv .venv
|
||
.venv\\Scripts\\Activate.ps1
|
||
```
|
||
|
||
2. Установите зависимости:
|
||
|
||
```powershell
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
3. (Опционально) Переопределите настройки через переменные окружения:
|
||
|
||
```powershell
|
||
$env:SECRET_KEY = "your-strong-secret-key"
|
||
$env:ADMIN_USERNAME = "ruslan"
|
||
$env:ADMIN_PASSWORD = "utOgbZ09ruslan"
|
||
```
|
||
|
||
4. Запустите сервер разработки:
|
||
|
||
```powershell
|
||
python app.py
|
||
```
|
||
|
||
## Маршруты
|
||
|
||
- `/login` — форма входа в админку.
|
||
- `/admin` — админ‑панель (только для авторизованных, иначе 404).
|
||
- `/p/<uuid>` — просмотр опубликованной страницы по UUID.
|
||
- `/` — редирект в админку для авторизованных, иначе 404.
|
||
|
||
## Замечания по безопасности
|
||
|
||
- HTML хранится и отдаётся как есть. Предполагается, что контент вводит доверенный админ.
|
||
- В продакшне обязательно задайте `SECRET_KEY` и используйте HTTPS; настройте защищённые cookies.
|
||
|