Doplnit README: git clone/pull workflow, Nginx vhost příklad

Instalační kroky teď počítají s nasazením přes git clone na server
místo ručního kopírování souborů, plus doplněné proměnné pro úvodní
stránku a alternativní Nginx+PHP-FPM konfigurace vedle Apache.
This commit is contained in:
2026-08-05 11:47:38 +02:00
parent 2b9a673912
commit 8763e245f5
+57 -4
View File
@@ -25,10 +25,23 @@ salt/verifierem, takže se hráč může rovnou přihlásit ve hře.
## Instalace
0. Naklonuj repozitář na server, mimo webroot ostatních webů (např. vedle
PlayerMap):
```bash
git clone https://gitea.minkey.cz/vojta/wow-registrace.git
cd wow-registrace
```
1. Zkopíruj `.env.example` do `.env` a vyplň:
- `SITE_NAME`, `REALMLIST_ADDRESS` (`wow.minkey.cz`), `CLIENT_VERSION`,
případně `CLIENT_DOWNLOAD_URL` — zobrazují se na úvodní stránce
- `DB_HOST`, `DB_PORT`, `DB_DATABASE` (typicky `acore_auth`), `DB_USERNAME`, `DB_PASSWORD`
- `TURNSTILE_SITE_KEY` / `TURNSTILE_SECRET_KEY` z Cloudflare dashboardu
`.env` se **negituje** (je v `.gitignore`) — na serveru ho vytváříš ručně,
nikdy ho nepushuj do repozitáře.
2. Vytvoř v MySQL **dedikovaného uživatele** jen s právy na tabulku `account`
(neházej tam root přístup):
@@ -45,17 +58,47 @@ salt/verifierem, takže se hráč může rovnou přihlásit ve hře.
```apache
<VirtualHost *:443>
ServerName registrace.tvuj-server.cz
DocumentRoot /cesta/k/wowserver-registrace/public
ServerName wow.minkey.cz
DocumentRoot /cesta/k/wow-registrace/public
<Directory /cesta/k/wowserver-registrace/public>
<Directory /cesta/k/wow-registrace/public>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
```
4. Uprav práva zápisu na `data/` (potřebuje tam vzniknout `ratelimit.sqlite`):
Příklad Nginx + PHP-FPM (uprav `fastcgi_pass` podle svého PHP-FPM socketu,
stejně jako to máš u PlayerMap):
```nginx
server {
listen 443 ssl http2;
server_name wow.minkey.cz;
root /cesta/k/wow-registrace/public;
index index.php;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
# includes/, data/ a .env jsou mimo document root, takže už jsou
# skryté; tenhle blok je jen pojistka, kdyby se root někdy spletl
location ~ /\.(env|git) {
deny all;
}
}
```
4. Uprav práva zápisu na `data/` (potřebuje tam vzniknout `ratelimit.sqlite`) —
uprav uživatele podle toho, pod kterým webserver skutečně běží (`www-data`
na Debianu/Ubuntu, `http` na Arch, `nginx` apod.):
```bash
chown -R www-data:www-data data
@@ -77,6 +120,16 @@ salt/verifierem, takže se hráč může rovnou přihlásit ve hře.
6. Otevři stránku v prohlížeči, vyzkoušej registraci, ověř že se v `account`
tabulce objevil nový řádek a že se přihlásíš herním klientem.
## Aktualizace
```bash
cd /cesta/k/wow-registrace
git pull
```
`.env` a `data/ratelimit.sqlite` nejsou v repozitáři, takže `git pull`
je nepřepíše.
## Poznámky k herním pravidlům
- Uživatelské jméno i heslo se před výpočtem SRP6 verifieru převádí na