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:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user