mirror of
https://gitlab.com/MrFry/mrfrys-node-server
synced 2025-04-01 20:24:18 +02:00
109 lines
3.2 KiB
Markdown
109 lines
3.2 KiB
Markdown
# Setup
|
|
|
|
## Linux
|
|
|
|
./make.sh
|
|
|
|
## Windows
|
|
|
|
Install linux
|
|
|
|
just kidding, windowson még sosem próbáltam, ha valaki rájön ott hogy működik, akkor az jól jönne, ty.
|
|
|
|
A `make.sh` script futtatása minden eddigi szerver által használt/generált adatot felülír!
|
|
|
|
# Futtatás
|
|
|
|
Szükséges könyvtár struktúrát és egyéb fájlokat automatikusan létrehozza a `make.sh` script
|
|
|
|
Majd:
|
|
|
|
`npm run dev`
|
|
vagy
|
|
`npm start`
|
|
|
|
## Környezeti változók
|
|
* `NS_SQL_DEBUG_LOG`
|
|
|
|
Ha `true`, akkor minden SQL utasítás ki lesz írva a konzolra
|
|
|
|
* `NS_LOGLEVEL`
|
|
|
|
Egy szám lehet, ami minél nagyobb annál részletesebben történik a logolás konzolra. Jelenleg ez
|
|
ilyen 1-4 közötti skálán mozog.
|
|
|
|
* `NS_DEVEL`
|
|
|
|
'Devel' ként futtatja a szervert. Jelenleg ez azt jelenti, hogy pár helyen https helyett http-re
|
|
redirectel.
|
|
|
|
## Adatbázis előkészítése
|
|
|
|
A szerver egy felhasználókat, session-öket és ehhez tartozó segéd táblákat tartalmazó adatbázist
|
|
használ. Az adatbázis struktúrát a `modules/api/apiDBStruct.json` tartalmazza, és az adatbázis
|
|
módosításához szükséges függvények az `utils/dbtools.js` fájlban vannak megvalósítva. Így nem kell
|
|
SQL lekérdezéseket írni, csak ezeket meghívni.
|
|
|
|
A `make.sh` script automatikusan létrehoz egy üres adatbázist a `utils/dbSetup.js` segítségével.
|
|
Később ezt manuálisan futtatva alaphelyzetbe lehet állítani az adatbázist. Ha létezik egy
|
|
`utils/ids` fájl, ami sorokban felhasználó kliens ID-kat tartalmaz, akkor a `utils/dbSetup.js`
|
|
automatikusan létrehoz ezek alapján felhasználókat.
|
|
|
|
## Hogy az API és a többi modul tudjon kommunikálni:
|
|
|
|
__Ezt a rész csak nagyon kevés esetben kell megcsinálni, ajánlott kihagyni! Ennélkül is működik
|
|
lokálisan az API és a usercript!__
|
|
|
|
1. Ezt a pár sort add hozzá a `/etc/hosts` fájlhoz:
|
|
|
|
```
|
|
127.0.0.1 api.frylabs.net
|
|
127.0.0.1 qmining.frylabs.net
|
|
```
|
|
|
|
Figyelj rá, hogy az IP cím és az url közötti spacing az pontosan 1 tab!
|
|
|
|
Firefox nem mindig használja a hosts filet! Ennélkül a qmining modul nem bír kommunikálni az api-val, ahonnan szedi a kérdéseket, motd-t, felhasználó kérdéseket és ilyesmiket.
|
|
|
|
2. Ezután a server.js-ben a portot írd át 80-ra és superuserként kell indítani a szervert
|
|
|
|
3. Ezután a böngészőben a qmining.frylabs.net-en a gépen futó szerver lesz elérhető
|
|
|
|
A frylabs.net-es url-ek helyett lehet mást is használni, de néhány helyen előfordulhat hogy be van még égetve, ezért ezek ajánlottak
|
|
|
|
4. Ha végeztél ne felejtsd el kitörölni a `hosts` fájlból a bemásolt sorokat, mert annélkül nem lesz elérhető az eredeti szerver!
|
|
|
|
# stats mappa
|
|
|
|
### logs
|
|
|
|
Szuper részletes log, minden requestről, ajánlatos egy `tail -f stats/logs`-al nézni mi
|
|
történik
|
|
|
|
### msgs
|
|
|
|
A feedback oldalra írt üzenetek ebbe mentődnek
|
|
|
|
### stats
|
|
|
|
JSON file, kulcsok az url-ek, az értékek pedig hogy hányszor lettek lekérve
|
|
|
|
### vstats
|
|
|
|
Ugyanaz mint a `stats` file, csak napokba rendezve
|
|
|
|
### idstats
|
|
|
|
Cliens ID összes statisztika
|
|
|
|
### idvstats
|
|
|
|
Cliens ID összes statisztika napokba rendezve
|
|
|
|
### recdata
|
|
|
|
Az az adat, amit a szerver az `/isadding` végpontra kap
|
|
|
|
### dataEdits
|
|
|
|
Néhány fontos log amit az api generál mikor a felhasználók a dataEditor modult használják
|