Chrome, Firefox, Safari, Opera: aktuális és előző verzió.
Edge: csak a Chromium alapú, aktuális és előző verzió.
Internet Explorer: NEM TÁMOGATOTT
A sERPában telepíteni kell a sERPaWeb nevű kiegészítő modult.
A program futtatásához a Microsoft Internet Information Services (IIS) 8.0 (vagy újabb) webkiszolgáló szükséges. A program futtatható Linux szerveren is, de ahhoz semmiféle támogatást nem tudunk nyújtani.
START + R: %SystemRoot%\system32\ServerManager.exe
Internet Information Services
+ Webkezelési eszközök
- IIS-kezelő konzol
+ Webszolgáltatások
+ Alkalmazásfejlesztési szolgáltatások
- Alkalmazásinicializálás
- ISAPI-bővítmények
- ISAPI-szűrők
+ Állapot és diagnosztika
- HTTP-naplózás
+ Általános HTTP szolgáltatások
- Alapértelmezett dokumentum
- HTTP-hibák
- Statikus tartalom
+ Biztonság
- Kérelmek szűrése
+Teljesítménnyel kapcsolatos szolgáltatások
- Dinamikus tartalom tömörítése
- Statikus tartalom tömörítése
A program futtatásához a .NET Runtime-ra van szükség, ami feltelepíthető innen: https://dotnet.microsoft.com/en-us/download.
Az ASP.NET Core Runtime alatt válasszuk a Windows - Hosting Bundle-t. Töltsük le, telepítsük fel a webszerverre.
A .NET Runtime telepítése, frissítése után indítsuk újra az IIS-t.
A webalkalmazást saját Application Pool-ba rakjuk.
Az IIS kezelőjében jobb egérgombbal kattintsunk az Application Pools elemre, majd Add Application Pool. Name: sERPaWeb (vagy ami tetszik). .NET CLR version: No Managed Code. Mentsük el.
A létrehozott (sERPaWeb) Application Pool-on jobb egérgomb, Advanced Settings, Process Model, Load User Profile: True.
Az IIS kezelőjében jobb egérgombbal kattintsunk a Sites-ra, majd Add Website.
SiteName: sERPaWeb (vagy amit szeretnénk).
Application Pool: válasszuk az előzőekben létrehozott sERPaWeb Application Pool-t.
Physical path: a webalkalmazásunk fájljait bárhova tehetjük, de ajánlott az inetpub könyvtárban létrehozni számára egy alkönyvtárat, pl.: inetpub\sERPaWeb (az alias és a könyvtárnév nem kell, hogy megegyezzen, de célszerű). Használjuk a tallózás ("...") gombot, majd a Make New Folder gombbal hozzuk létre az alkalmazás könyvtárát.
Adjuk meg a protokollt, IP címet, portot, ha a sERPaWeb kívülről is hozzáférhető, mindenképpen HTTPS-t használjunk.
Adjuk meg a Host nevét (pl. sERPaWeb.cégnév.hu). A program csak saját aldomain-ben (subdomain-ben) képes működni (pl. serpaweb.analfabt.hu), alkönyvtárban (subfolder-ben) nem, tehát a www.analfabt.hu/sERPaWeb nem használható. A subdomain létrehozását a domain szolgáltatótól kell kérni.
Adjuk meg az SSL Certificate-et.
OK.
1. A telepítéshez szükséges fájlok az InstCD\Kiegeszitesek\sERPaWeb könyvtárban lévő sERPaWeb.zip fájlban találhatók. Csomagoljuk ki a sERPaWeb.zip fájlt, majd a sERPaWeb könyvtár tartalmát másoljuk be az IIS megfelelő könyvtárába (C:\inetpub\wwwroot\sERPaWeb).
2. Az IIS könyvtárában másoljuk le az appsettings.Minta.json fájlt appsettings.json néven.
3. Indítsuk el rendszergazdaként a Jegyzettömböt. Nyissuk meg az appsettings.json fájlt. A következő fejezetben leírtak alapján végezzük el a szükséges beállításokat. Mentsük el a fájlt.
4. A ConnectionStrings-ben megadott felhasználónak select-ek végrehajtása és tárolt eljárások futtatása jogosultságokkal kell rendelkeznie az adatbázisra.
5. Indítsuk újra az Application Pool-t (vagy az IIS-t). Győződjünk meg róla, hogy a webalkalmazás és az Application Pool is fut (nincs kis fekete négyzet egyik ikon jobb alsó sarkában sem).
Ha az appSettings.json fájlban módosítunk valamit, akkor állítsuk le az Application Pool-t, majd a módosítás után indítsuk újra, mert a módosítások csak így jutnak érvényre!
Logging / LogLevel / Default
Itt adhatjuk meg a naplózás szintjét. Alapértelmezett értéke "Warning", ekkor csak a figyelmeztetéseket és hibákat naplózza, ez általában elég. Ha "Information"-re, vagy "Debug"-ra állítjuk, akkor a figyelmeztetéseken és hibákon kívül minden hívást is naplóz, ettől a naplófájl nagyon nagyra nőhet. Az "Information", "Debug" beállítást csak hibakeresésre ajánljuk.
"Logging": {
"LogLevel": {
"Default": "Warning",
"Microsoft": "Warning",
Meg kell adni a log fájlok helyét és nevét is:
"PathFormat": "Logs/sERPaWeb-{Date}.log"
A "{Date}" helyére a program belerakja a fájlnévbe a dátumot, így minden nap új log fájl keletkezik. A "{Date} használata nem kötelező, de erősen ajánlott. A program az utolsó 31 log fájlt őrzi meg, tehát ha a névben szerepel a "{Date}", akkor egy hónapra visszamenőleg lesznek meg a log fájlok, nem fog a Logs könyvtár végtelenre nőni.
Connection
Ebben a bejegyzésben adhatjuk meg az adatbázis-kiszolgáló eléréséhez szükséges adatokat. A Server, Database, User, Password mezőkbe írjuk be az adatbázis-elérés adatait, pl.:
"Connection": {
"Server": "szerver.analfabt.local",
"Database": "AnalfaBT_Teszt",
"User": "sERPaWeb",
"Password": "xxx",
A '"', '\' karaktereket ún. escape szekvenciával kell beírni, ami azt jelenti, hogy elé kell tenni egy '\'-t, tehát '"' helyett '\"'-t, '\' helyett '\\'-t kell írni, pl.:
"Connection": {
"Server": "analfabt\\szerver",
"Database": "AnalfaBT_Teszt",
"User": "sERPaWeb",
"Password": "x\"x",
Az adatbázis-kiszolgálót titkosított csatornán érjük el, ez az ajánlott beállítás. Ha az adatbázis-kiszolgáló és a sERPaWeb szerver nem ugyanazon a (virtuális) gépen fut, akkor mindenképpen titkosított kapcsolatot használjunk. Ha egy (virtuális) gépen futnak, akkor a titkosítás kikapcsolható. Ha nem szeretnénk titkosítást használni (nem ajánlott), akkor az "Encrypt" értékét állítsuk "false"-ra:
"Connection": {
"Encrypt": true,
A titkosított kapcsolathoz használjunk megbízható szervezet által kiállított tanúsítványt, ez az ajánlott beállítás. Amennyiben nincs ilyen tanúsítványunk, használhatjuk az adatbázis-kiszolgáló által aláírt tanúsítványt is (nem ajánlott), ilyenkor a "TrustServerCertificate" értékét állítsuk "true"-ra:
"Connection": {
"TrustServerCertificate": false
Jwt / Secret:
Adjunk meg egy titkos kulcsot, a hossza legalább 32 karakteres legyen, pl.:
"Jwt": {
"Secret": "Legalább 32 karakteres titkos kulcs"
},
General / ÁltalánosParaméterNév
A sERPa sERPaWeb | Struktúra beállítások | Általános paraméter funkcióban több sERPaWeb konfigurációt is létrehozhatunk, különböző paraméterekkel. Itt adhatjuk meg az ebben a webalkalmazásban használni kívánt konfiguráció nevét.
"General": {
"ÁltalánosParaméterNév": "Normál",
General / DashboardDataReloadingTimeout
A webszerverben lévő adat gyorsítótár frissítési idejének beállítása, másodpercben. Ha a megadott ideig nincs adatkérés, törlődik a gyorsítótár és a legközelebbi adatkéréskor újból betöltésre kerülnek az adatok az SQL szerverből, egyébként az adatok a gyorsítótárból lesznek kiszolgálva.
"General": {
"DashboardDataReloadingTimeout": 300
A program a naplófájlokat az alkalmazás könyvtárán belül található Logs könyvtárba rakja (pl. C:\inetpub\sERPaWeb\Logs). Ha nincs ilyen könyvtár, hozzuk létre. Az IIS_IUSRS felhasználónak adjunk Modify jogot a Logs könyvtárhoz.
A sERPa és a sERPaWeb verziójának egyeznie kell, ezért a sERPa frissítésekor mindig frissítsük a sERPaWebet is!
1. Állítsuk le az Application Pool-t (vagy az IIS-t), amiben a sERPaWeb van.
2. Frissítsük a .NET Core Runtime-ot, lásd feljebb.
3. A Data, Logs könyvtárak és az appsettings.json fájl kivételével töröljük le a sERPaWeb könyvtárait és fájljait a webalkalmazás könyvtárából (C:\inetpub\sERPaWeb).
4. Csomagoljuk ki a sERPaWeb.zip fájlt, majd a sERPaWeb könyvtár tartalmát másoljuk be a webalkalmazás könyvtárába (C:\inetpub\sERPaWeb).
5. Hasonlítsuk össze az appsettings.Minta.json fájlt az appsettings.json fájllal. Ha új bejegyzést találunk az appsettings.Minta.json fájlban, másoljuk át az appsettings.json fájlba, és értelemszerűen töltsük ki.
6. Indítsuk újra az Application Pool-t (vagy az IIS-t), amiben a sERPaWeb van. Győződjünk meg róla, hogy a webalkalmazás és az Application Pool is fut (nincs kis fekete négyzet egyik ikon jobb alsó sarkában sem).
Győződjünk meg róla, hogy a webalkalmazás és az Application Pool is fut (nincs kis fekete négyzet egyik ikon jobb alsó sarkában sem). Ha a webalkalmazás nem fut, akkor a böngészőben 404-es hibát kapunk, ha az Application Pool nem fut, akkor 503-ast.
Ha a sERPaWeb nem indul el, a böngészőben (jellemzően 500-as) hibajelzést kapunk. Általában nem elég friss a .NET Runtime, nem frissítettük a sERPaWebet, rossz verziót telepítettünk, vagy az appSettings.json fájlba valamit rosszul írtunk be.
A program indulásakor fellépő hibák is belekerülnek a naplóba, ezért nézzük meg a naplófájlt (lásd Naplózás).
Ha nem találja az SW.NyelvLekerdezes tárolt eljárást, akkor valószínűleg nem telepítettük fel a sERPába a sERPaWeb kiegészítő modult, vagy a sERPaWeb felhasználónak (amit az appsettings.json-ben adtunk meg) nincs joga a sERPaWeb tárolt eljárásai futtatásához.
Ha az oldal elindul, be lehet jelentkezni, de nincsenek menüpontok, akkor lehet, hogy nem egyezik a sERPa sERPaWeb | Struktúra beállítások | Általános paraméter funkcióban megadott név és a sERPaWeb szerver appsettings.json fájlban megadott ÁltalánosParaméterNév.