SDMS WebServer: Razlika med redakcijama
m (→Nastavljanje pravic) |
m (→Atribut: Web info) |
||
| Vrstica 112: | Vrstica 112: | ||
sort=1 | sort=1 | ||
show=1 | show=1 | ||
| − | |||
hint=... | hint=... | ||
| − | + | icon=a.gif</source> | |
Vsaka oznaka se mora pojaviti natanko v eni temi, ni pomembno kateri. Iz teh informacij se potem generira menu za vklop/izklop v spletni aplikaciji. Prve štiri vrstice so obvezne. | Vsaka oznaka se mora pojaviti natanko v eni temi, ni pomembno kateri. Iz teh informacij se potem generira menu za vklop/izklop v spletni aplikaciji. Prve štiri vrstice so obvezne. | ||
Redakcija: 10:17, 20. avgust 2012
Namestitev
SDMS WebServer se namesti tako:
- pripravi se novo mapo, kjer bo instaliran strežnik SDMS Webserver, recimo C:\SDMS\WEBSERVER
- preko ftp protokola se iz naslova www.sdms.si/update/sdms41/sdmswsp/en (uporabnik anonymous) se nanjo prenese vse datoteke
- datoteko sdmswsp.txt se kopira v sdmswsp.ini
- pravilno se nastavi parametre, predvsem parameter path
- servis se instalira iz konzolne vrstice z ukazom sdmswsp -install
- ob uspešni instalaciji servisa se to izpiše v okencu, sicer pa je prišlo do problema, ki je razviden v log datoteki
- servis se zažene z ukazom sdmswsp -start
- ob uspešnem zagonu se to izpiše v konzolnem oknu.
Strežnik je sedaj nameščen in zagnan. Če se bo uporabljala varna poivezava, je potrebno namestiti tudi certifikat strežnika.
Zagon
SDMS WebServer se aktivira tako, da se v SDMS raziskovalcu doda nov modul z imenom SdmsWSP in naslednjo vsebino:
Sub OnCreate
WebServer.Clear
WebServer.AddHost(80, '', '', '', '')
WebServer.Start
...
EndSub
Če želimo dodati tudi dostop preko varne povezave (https), to storimo takole:
Sub OnCreate
WebServer.Clear
WebServer.AddHost(80, '', '', '', 'http')
WebServer.AddHost(443, '', '', '', 'https').SetSecure(ProgramPath)
WebServer.Start
...
EndSub
Če želimo zagotoviti uporabo varne povezave (https) in izvesti samodejno preusmeritev nanjo:
Sub OnCreate
WebServer.Clear
WebServer.AddHost(80, '', '', '', 'http').SetRedirect('https://www.test.si/')
WebServer.AddHost(443, '', '', '', 'https').SetSecure(ProgramPath)
WebServer.Start
...
EndSubPri uporabi varne povezave (https) je seveda nujno tudi namestiti certifikat strežnika.
Osnovne nastavitve
Ob prijavi se uporabniku prikaže logotip velikosti 480x120 pik. Datoteko se shrani na mapo WebServer in poda njeno ime.
WebServer.Logo = 'logo.png'
Privzeto dopušča SDMS WebServer dostop samo SDMS uporabnikom. Če želimo dodati tudi možnost anonimnega dostopa, to storimo tako:
WebServer.User = [Gost]Pri tem je Gost (oz. poljubno drugo ime) SDMS uporabnik, ki se bo uporabljal za anonimne dostope. Tega uporabnika moramo seveda dodati in mu prirediti pravice.
Določiti je treba osnovno okno, ki se prikaže uporabniku ob prvem zagonu.
WebServer.Window = '370000,25000,630000,200000'
Določiti je treba tematiko, ki se bo uporabljala za izris.
WebServer.DrawList = [Web Tematika]
Dodati je treba plasti, po katerih za izvaja iskanje in izpis podatkov.
WebServer.AddSearch([Plast A].Search('Default'))
WebServer.AddSearch([Plast B].Search('Default'))
Dobro je dodati tudi seznam priljubljenih lokacij, ki so dostopne iz menija.
WebServer.AddLocation('Slovenija', '370000,25000,630000,200000', '')
WebServer.AddLocation('Ljubljana', '370000,25000,630000,200000', '')
WebServer.AddLocation('Maribor', '370000,25000,630000,200000', '')
Možno je dodati tudi seznam dodatnih povezav, ki so ravno tako dostopne iz menija.
WebServer.AddLink('Softdata Home Page', 'http://www.softdata.si', '')Napredne nastavitve
Ob prijavi lahko določene nastavitve spremenimo glede na prijavljenega uporabnika. To storimo tako, da dodamo novo proceduro:
Sub OnWebLogin
If User.MatchSecurityTags('noweb', False) Then
WebServer.User = Nil // določenim uporabnikom preprečimo dostop
EndIf
If User.MatchSecurityTags('ljubljana', False) Then
WebServer.Logo = 'logo-lj.png' // določenim uporabnikom pokažemo drug logotip
WebServer.Window = '510000,120000,630000,200000' // in drugo osnovno okno
WebServer.DrawList = [Web Tematika LJ] // ter drugo tematiko
EndIf
EndSubPriprava tematike
Tematiko se pripravi kot sicer. Izjemnega pomena pa je, da se tematika v vseh merilih in z vsemi vključenimi temami vedno izriše hitro, torej v rangu recimo 3 sekund (kar je že precej). Optimalno bi bilo pod 1 sekundo.
Dodati je potrebno še določene informacije za spletno aplikacijo. Te se dodajo v atrubutih posameznih tem.
Atribut: Alias - Dodatno ime
Teme se v spletni aplikaciji ne prižigajo/ugašajo posamezno, temveč skupinsko (in to niso iste skupine kot v client aplikaciji). Skupine določimo poljubno z neko kratko oznako, recimo karte, vod, tocke,... Vsem temam določimo v atributu Dodatno ime eno oznako, na katero se ta tema vklopi/izklopi. Če tema nima oznake, se nikoli ne prikaže. Če želimo temo prikazati vedno, vnesemo za znak *.
Atribut: View tags
Namen tega atributa je omejevanje vpogleda v podatke glede na uporabnika.
Atribut: Web info
V tem atributu določimo prej omenjene skupine. To storimo večvrstično v naslednji obliki:
item=karte
name=Pregledne karte
sort=1
show=1
hint=...
icon=a.gifVsaka oznaka se mora pojaviti natanko v eni temi, ni pomembno kateri. Iz teh informacij se potem generira menu za vklop/izklop v spletni aplikaciji. Prve štiri vrstice so obvezne.
Priprava iskanj in izpisov
Iskanje po poljubnih podatkih se pripravi v urejevalniku podatkovne plasti (Searches). V modulu SdmsWSP pa z ukazom AddSearch dodajamo le tiste, ki jih želimo uporabljati v spletni aplikaciji. ...
Nastavljanje pravic
Pri spletni aplikaciji je možno nastaviti različne nivoje dostopa (izris na karti, iskanje, izpis podatkov) glede na prijavljenega uporabnika. V ta namen se uporablja kratke oznake, ki jih umenujemo Security tags.
Te oznake se za uporabnika določa v urejevalniku uporabnika oz. v urejevalniku skupine uporabnikov (možno je tudi v varnostnem središču). Vsak uporabnik/skupina ima lahko določenih več oznak, ki so ločene z vejico. Uporabnik poleg svojih oznak dobi tudi vse oznake skupin, v katerih je.
Na splošno velja naslednje:
- za vpoglede (tematika, vpogled v podatke) velja, da če oznaka ni določena, imajo vpogled vsi, sicer pa samo tisti z oznako,
- za urejanja podatkov (dodaj, popravi, briši) velja, da če oznaka ni določena, ne more urejati nihče, sicer pa samo tisti z oznako.
Vedno lahko določimo tudi več varnostnih oznak, ločenih z vejico.
Varnostne oznake se uporabljajo:
- v tematiki:
- v atributu teme View tags
- v atrubutu teme Web info, v vrstici view=
- pri definiciji iskanja oz. izpisa podatkov:
- View access
- Append access
- Update access
- Delete access
- View in Update access pri posameznih poljih
- v SDMS Basicu, ukaz je MatchSecurityTags.
Nadaljevanje ignoriraj:
Statične strani
- .htm, *.js, *.css
Dinamične strani
- .ssp
Dinamične direktne povezave
MAP.GIF, MAP.JPG, MAP.PNG
To je najbolj uporabljan URL, ki nam vrne izdelano sliko (karto). Potrebni so naslednji parametri (ali piškotki):
- position=W,H,Y1,X1,Y2,X2
- širina in višina slike v pikslih ter okno karte v koordinatah. Razmerje slike in okna naj bo pravilno. To je nujen parameter, alternativa pa so lahko parametri y, x, scale, width, height (vsi).
- drawlist=A,B,C,...
- tematika oz. seznam tematik, ki se naložijo. To je nujen parameter, alternativno pa se to lahko izvede tudi v proceduri command.
- drawshow=A,B,C,...
- če je ta parameter podan, se v tematiki vklopijo za izris samo tiste teme, ki imajo kot dodatno ime kakšno vrednost iz seznama.
- command=C
- če je ta parameter podan, se naveden ukaz izvede pred samim izrisom karte. Ukaz je lahko samo uporabniško definirana procedura (SUB) brez parametrov.
- y=N
- ta parameter je lahko alternativa parametru position, pomeni pa y koordinato centra karte.
- x=N
- ta parameter je lahko alternativa parametru position, pomeni pa x koordinato centra karte.
- scale=N
- ta parameter je lahko alternativa parametru position, pomeni pa merilo izrisa karte.
- width=N
- ta parameter je lahko alternativa parametru position, pomeni pa širino slike v pikslih.
- height=N
- ta parameter je lahko alternativa parametru position, pomeni pa višino slike v pikslih.
- dpi=N
- ta parameter je lahko podan, kadar bi želeli sliko v drugi resoluciji od privzete 96 DPI.
FUNCTION.DLL
To je tudi zelo pogosto uporabljen URL, ki vrne tekst, ki ga je izdelala uporabniško definirana funkcija tipa TStringList.
- function=F
- ta parameter je nujen, pomeni pa ime funkcije, ki se kliče.
TOOLKIT.DLL
Trenutno še v testni fazi.
- id=id