mirror of
https://gitverse.ru/kpa39l/gotosocial.git
synced 2026-09-29 09:55:10 +00:00
cd7e279bb6
- docker-compose.yml: GTS_ACCOUNTS_REGISTRATION_OPEN=true, GTS_ACCOUNTS_REGISTRATION_DAILY_LIMIT=10 - openspec: proposal/specs/design/tasks for dynamic apex webfinger + registration + SMTP verify - verified: /api/v1/instance → registrations:true; apex webfinger → acct:kpa39l@dedinit.ru; SMTP test OK
51 lines
2.4 KiB
Markdown
51 lines
2.4 KiB
Markdown
## Goals
|
|
|
|
1. Восстановить короткий адрес `@kpa39l@dedinit.ru` в клиентах (Tusky/Mastodon).
|
|
2. Открыть регистрацию с лимитом 10 пользователей/день.
|
|
3. Убедиться, что SMTP работает (для писем подтверждения).
|
|
|
|
## Non-Goals
|
|
|
|
- Не меняем DNS (apex остаётся на Jino).
|
|
- Не меняем split-domain схему (host=social.dedinit.ru, account-domain=dedinit.ru).
|
|
- Не вводим PHP/мод_rewrite (недоступны на Jino).
|
|
- Не открываем регистрацию без лимита.
|
|
|
|
## Architecture
|
|
|
|
### Топология
|
|
|
|
```
|
|
Клиент (Tusky/Mastodon)
|
|
│ резолв @kpa39l@dedinit.ru
|
|
▼
|
|
dedinit.ru (apex, Jino/Apache)
|
|
│ /.well-known/webfinger?resource=acct:kpa39l@dedinit.ru
|
|
▼ RedirectMatch 301 (mod_alias, .htaccess)
|
|
social.dedinit.ru (GtS, vps02→WG→bigbox→docker)
|
|
│ /.well-known/webfinger?resource=...
|
|
▼ динамический JSON: subject=acct:kpa39l@dedinit.ru
|
|
```
|
|
|
|
### Регистрация
|
|
|
|
`docker-compose.yml` env:
|
|
- `GTS_ACCOUNTS_REGISTRATION_OPEN=true`
|
|
- `GTS_ACCOUNTS_REGISTRATION_DAILY_LIMIT=10`
|
|
|
|
approval_required=true (GtS по умолчанию): админ одобряет заявки.
|
|
Очередь одобрения: дефолт GtS (20) — при 10/день хватает.
|
|
|
|
## Risks / Open Questions
|
|
|
|
- **Tusky может кэшировать старый адрес**: после фикса apex-WebFinger нужно
|
|
перезайти/переподписаться в клиенте (или переустановить) — клиентский кэш
|
|
сам не сбросится. Это документируется, но не решается серверно.
|
|
- **`.htaccess` и rsync --delete**: деплой hugo (make deploy) использует
|
|
`rsync --delete public/`. `.htaccess` в `static/.well-known/` копируется в
|
|
`public/` и не затирается (файлы в public/ соответствуют static/, но
|
|
--delete удаляет только лишнее). Проверено: .htaccess в static/ →
|
|
public/.well-known/webfinger/.htaccess.
|
|
- Jino: `RedirectMatch` (mod_alias) работает; **mod_rewrite не работает** —
|
|
НЕ использовать RewriteRule.
|
|
- Статический index.html в webfinger УДАЛЁН — не восстанавливать. |