Asio-ohjelmiston laitteisto- ja ympäristövaatimukset, käyttäjähallinto ja asennus
Laitteisto- ja ympäristövaatimukset
Ohjelmiston laitteisto- ja ympäristövaatimukset kuvataan erillisessä dokumentissa.
Käyttäjähallinto
Ohjelmiston käyttäjähallinto kuvataan käyttöoikeuksien ylläpito-ohjelmassa.
Ohjelmiston ensiasennus
Olettaen että Apache, PHP ja MySQL on asennettu, ja asennuspaketti purettu, menee ohjelmiston asennustyö päävaiheittain seuraavasti:
- Jos noudit asennuspaketin Asion palvelimelta Internet Exlorerilla, on selain voinut muuttaa tiedoston päätteen .tar.gz:sta .tar.tar:ksi. Jos näin on käynyt, muuta tiedoston pääte takaisin .tar.gz:ksi. Muutoin paketin purkaminen Windows-puolen ohjelmilla ei välttämättä onnistu.
- Pura ohjelmat haluamaasi hakemistoon Apachen dokumenttijuuren alla. Ohjelmat ovat tiedostossa, jonka nimi on tilavaraus.tar.gz. Mikäli palvelin on tarkoitettu ainoastaan tilavarauksen käyttöön, voi nämä laittaa suoraan dokumenttijuureen.
- Kirjaudu MySQL:ään ja luo tarvittavat tietokannat komennoilla:
create database asio;
create database xxxxx; (Tietokannan xxxxx oikea nimi kerrotaan Sinulle ennen asennusta.)
- Varmista, että taulussa yritys_p on toimitussopimuksen mukaisesti käyttäjäorganisaatioon liittyvä kirjaus (vain yksi rivi).
- Muokkaa grant.sql -tiedostosta ohjelman käyttämän tietokannan käyttäjän tiedot
(tunnus, salasana) oikein, mikäli ette halua käyttää oletuksia. Aja tämän jälkeen grant.sql MySQL:ssä root-oikeuksin. Tämä tiedosto asettaa tietokantojen käyttöoikeudet ohjelman edellyttämiksi.
Mikäli asennuspaketin mukana ei tullut grant.sql-tiedostoa, aja tietokannassa käsin seuraavat komennot root-oikeuksin:
GRANT ALL ON *.* TO tietokannan_kayttaja@localhost IDENTIFIED BY 'tietokannan_salasana';
UPDATE mysql.user
SET Password = OLD_PASSWORD('tietokannan_salasana')
WHERE User = 'tietokannan_kayttaja';
- Lue tietokantadumpit sisään MySQL-tietokantaan seuraavasti:
"mysql asio < asio.sql"
"mysql oma_tietokanta < oma_tietokanta.sql"
- Mikäli käyttöön on tarkoitus ottaa ulkoinen autentikointi, kopioi oikea ulkoisen autentikoinnin toteuttava ohjelmatiedosto nimelle inc/ext_auth.php. Ohjelmiston mukana toimitetaan seuraavat toteutukset:
- Asio-opiskelijahallinto, tiedosto inc/ext_auth.php.asio
- Microsoft Active Directory, tiedosto inc/ext_auth.php.ad
- Seuraava vaihe on asettaa sovelluksen palvelinkohtainen konfiguraatio kohdalleen. Tämä löytyy tiedostosta inc/server_settings.php. Konfiguraatiosta tulee käydä läpi vähintään seuraavat kohdat:
- $db_user = Tietokannan käyttäjätunnus
- $db_password = Tietokannan salasana
- $ext_udb_config = ulkoisen autentikoinnin yleisiä asetuksia. Näiden asetusten sisältö ja tietorakenne riippuvat käytettävästä ulkoisesta autentikoinnista. Toimitettavien ulkoisten autentikointitoteutusten asetukset on listattu seuraavassa:
- Asio-opiskelijahallinto:
- "interface" = HTTP-osoite PL/SQL-yhteysohjelmaan Asio-opiskelijahallinnossa.
- "database" = Tilavarauksen tietokanta, johon ulkoinen autentikointi liittyy. Laita tähän edellämainittu oma tietokanta.
- Microsoft Active Directory: kts. erilliset ohjeet
$mail_default_bounce = Sähköpostin virheiden paluuosoite.
Tähän osoitteeseen toimitetaan virheraportit mm. käyttäjien lähettämistä sähköpostivarausvahvistuksista
siinä tapauksessa, että käyttäjälle ei ole määritelty omaa sähköpostiosoitetta.
Tähän tulisi laittaa jokin sellainen käyttäjäorganisaation oma osoite, jota ATK-ylläpito tai
tilavarausohjelmiston pääkäyttäjä seuraa.
-
- Mikäli asennuspaketin mukana on tullut tietokannan synkronointiajo synchronize.php, aja se seuraavasti:
- Kopioi synchronize.php www-palvelimelle, ja käynnistä se selaimen avulla
- Mikäli teit edellä muutoksia tietokannan käyttäjätietoihin: kirjaudu sisään tietokantaan oikeilla käyttäjätiedoilla
- Klikkaa tulostuvan listan alalaidassa olevaa "perform operations"-linkkiä
- Mikäli synkronointiajo onnistui, näkyviin tulee kuittaussivu.
- Voit poistaa synchronize.php -tiedoston onnistuneen synkronoinnin jälkeen.
- Mikäli palvelin on Linux/Unix-palvelin, jossa www-palvelinohjelmalla ei ole kirjoitusoikeuksia ohjelmatiedostokansioihin, muuta kansion kokvar/tilakuvat käyttöoikeudet sellasiksi että www-palvelin pääsee kirjoittamaan ko. kansioon. Tämä onnistuu ohjelmien purkuhakemistosta seuraavalla komennolla:
chmod -R ugo+w kokvar/tilakuvat
Tämä vaihe on välttämätön vain jos varauskohteiden kuvien lähetystoiminto halutaan ottaa käyttöön.
- Mikäli käytössäsi on MySQL 4.1 tai uudempi, tilavarausohjelmisto saattaa antaa ensiasennuksen jälkeen virheilmoituksen "Could not connect" vaikka asetukset tiedostossa inc/server_settings.php ovatkin oikein. Ongelma johtuu siitä, että alkaen versiosta 4.1, MySQL käyttää oletusarvoisesti uudempaa, PHP:n kanssa epäyhteensopivaa autentikointiprotokollaa. Korjataksesi tämän aja seuraava komento MySQL:ssä (korvaa tietokannan käyttäjätunnus ja salasana asianmukaisesti):
UPDATE mysql.user
SET Password = OLD_PASSWORD('TIETOKANNAN SALASANA')
WHERE User = 'TIETOKANNAN KTUN';
- Mikäli teit asennuksen Windows-palvelimelle, varmistu siitä, että palvelimella on olemassa hakemisto C:\TEMP\ ja että www-palvelinohjelmalla on oikeudet kirjoittaa ko. hakemistoon. Tätä hakemistoa käytetään mm. liitteenä lähetettävien varusvahvistusten ja tiedostojen väliaikaiseen tallennukseen.
Ohjelmiston versiopäivitys
- Jos noudit asennuspaketin Asion palvelimelta Internet Exlorerilla, on selain voinut muuttaa tiedoston päätteen .tar.gz:sta .tar.tar:ksi. Jos näin on käynyt, muuta tiedoston pääte takaisin .tar.gz:ksi. Muutoin paketin purkaminen Windows-puolen ohjelmilla ei välttämättä onnistu.
- Mikäli kyseessä on ns. iso versiopäivitys (esim. versiosta 6.5 versioon 7), ota vanha tilavarauksen versio talteen. Ota erityisesti kopio asetustiedostosta inc/server_settings.php!
Koska tilanvarausohjelmisto ei sisällä absoluuttisia polkuja, voit jättää vanhan version palvelimelle käytettäväksi rinnakkain uuden version kanssa siltä varalta, että uuden version käyttöönotossa esiintyy ongelmia. Tämä tapahtuu helpoiten seuraavasti (ohjeet Linuxille):
- Mene tilavarauksen ohjelmahakemistoon
- Paketoi ohjelmat paketiksi käskyllä: "tar -cf /tmp/tilavaraus.tar *"
- Luo hakemisto vanhalle versiolle, esim. versiolle 6.5 voit käyttää käskyä: "mkdir v6.5"
- Mene hakemistoon komennolla "cd v6.5" ja pura ohjelmat tähän hakemistoon komennolla "tar -xzf /tmp/tilavaraus.tar"
- Voit poistaa pakettitiedoston /tmp/tilavaraus.tar tämän toimenpiteen jälkeen
Pääset käyttämään talteenotettua versiota suoraan selaimen avulla. Esimerkiksi jos tilanvarausohjelmiston vanha osoite oli
http://tilanvarauspalvelin.yritys.fi/kalenterit2/ niin näillä ohjeilla talteenotetun version osoite on
http://tilanvarauspalvelin.yritys.fi/v6.5/kalenterit2/
- Pura uudet ohjelmaversiot vanhojen ohjelmien päälle, samoihin hakemistoihin kuin asensit alkuperäisen ohjelman.
- Asennuspaketin yhteydessä toimitetaan joko tietokannan synkronointiajotiedosto synchronize.php tai linkki josta synkronointiajon voi ladata. Aja se seuraavasti:
- Kopioi synchronize.php www-palvelimelle, ja käynnistä se selaimen avulla
- Mikäli teit ensiasennuksen yhteydessä muutoksia tietokannan käyttäjätietoihin: kirjaudu sisään tietokantaan oikeilla käyttäjätiedoilla
- Klikkaa tulostuvan listan alalaidassa olevaa "perform operations"-linkkiä
- Mikäli synkronointiajo onnistui, näkyviin tulee kuittaussivu.
- Jos joitain operaatioita ei voitu suorittaa, näkyvät SQL-lauseet yhä ruudulla. Seuraavat operaatiot voi jättää huomiotta, sillä ne johtuvat MySQL-versioiden eroista:
- ALTER TABLE ... MODIFY -käskyt joissa on mainittu saraketyyppinä LONGTEXT (esim. taulu session_p, sarake data)
- ALTER TABLE ... ADD INDEX -käskyt, joita vastaava indeksi on jo olemassa taulussa. Synkronointiohjelma saattaa näyttää tällaisia rivejä mikäli taulussa on jo ennaltaan useita ko. saraketta koskevia indeksejä.
- Jos synkronointi epäonnistui ja taulurakenne ei päivittynyt, on kyse todennäköisesti siitä että niillä MySQL-käyttäjätunnuksilla joilla synkronointia ajetaan ei ole oikeuksia tehdä taulurakenteeseen muutoksia. Kopioi tällöin ruudulla näkyvät "ALTER TABLE" ja "CREATE TABLE" -käskyt tekstieditoriin ja aja ne käsin tietokannassa.
- Voit poistaa synchronize.php -tiedoston onnistuneen synkronoinnin jälkeen.
- Mikäli kyseessä oli iso versiopäivitys (esim. versiosta 6.5 versioon 7) eikä korjauspäivitys, tarkista että tiedoston inc/server_settings.php asetukset vastaavat yhä palvelimesi konfiguraatiota.
Tärkeimmät asetukset ovat tiedoston alussa olevat tietokannan käyttäjätunnus ja salasana.
Ohjelmiston siirto uudelle palvelimelle
Tämä ohje kuvaa sen, miten tilavararausohjelmisto voidaan siirtää palvelimelta toiselle.
Ohjeessa on oletettu, että saatavilla ovat viimeisimmät tilavarauksen ohjelmapaketit sekä tietokannan
synkronointiajo synchronize.php. Mikäli näitä ei ole saatavilla, ota yhteyttä Asio-Dataan.
- Kirjaudu sisään vanhalle palvelimelle, ja ota talteen tietokantadumpit nykyisestä tuotantotietokannasta. Tämä tapahtuu komennoilla:
MySQL 4.0 tai vanhempi:
mysqldump asio -K --quote-names -uKTUN -pSALASANA > asio.sql
mysqldump oma_tietokanta -K --quote-names -uKTUN -pSALASANA > oma_tietokanta.sql
MySQL 4.1 tai uudempi:
mysqldump asio -K --quote-names --compatible=mysql323 -uKTUN -pSALASANA > asio.sql
mysqldump oma_tietokanta -K --quote-names --compatible=mysql323 -uKTUN -pSALASANA > oma_tietokanta.sql
HUOM! Tietyissä MySQL 4.1 ja 5.0-versioissa on mysqldump-ohjelmassa bugi, joka aiheuttaa auto_increment-saraketiedon
jäämisen pois dumpista.
Lisätietoa bugista MySQL:n sivuilta.
Tarkistaaksesi onko versiosi buginen toimi seuraavasti:
Jos rivillä ei näy määrettä "auto_increment", MySQL-versiossasi on tämä bugi.
Mikäli versiosi kuuluu bugin vaikutusalueeseen, on sinulla kaksi vaihtoehtoa:
- Ota dumpit ulos ensimmäisen ohjeen mukaisella käskyllä, jossa ei ole "--compatible=mysql323" -optiota. Tällöin dumpit muodostetaan oikein, mutta ottamiasi dumppeja ei voi siirtää sellaiseen MySQL-versioon, joka on aikaisempi kuin 4.1.
- Ota dumpit ulos kuten ohjeessa. Kun olet ladannut dumpit uudelle palvelimelle, aja välittömästi Asion tietokantasynkronointiajo. Synkronointiajo korjaa auto_increment-sarakkeet.
- Luo uudelle palvelimelle vastaavat tyhjät uudet tietokannat MySQL-komennoilla
CREATE DATABASE asio;
CREATE DATABASE oma_tietokanta;
- Kopioi syntyneet dumppitiedostot uudelle palvelimelle ja aja ne sisään komennoilla:
mysql asio < asio.sql
mysql oma_tietokanta < oma_tietokanta.sql
- Suorita ohjelmien asennus ja tietokantojen synkronointi ylläolevan ensiasennusohjeen mukaisesti.
Kutsut Asio-ohjelmiin
- Tilavarausohjelmiston aloitussivu: kalenterit2/index.php
- Lyhytkurssiohjelmiston aloitussivu: lyhytkurssi/index.php
Ilman käyttäjätunnuksia toimiva selailunäkymä
Ensin pari sanaa ilman käyttäjätunnuksia toimivasta selailunäkymästä:
ilman käyttäjätunnuksia toimiva selailunäkymä voidaan kääntää päälle luomalla
käyttöoikeuksien kautta rooli, jonka tunniste on "guest". Ilman tunnuksia sisään tulevat
käyttäjät saavat tähän rooliin kirjatut käyttöoikeudet.
Selailutilaan mennään lisäämällä tilavarausohjelmiston urlin perään parametri "guest",
jonka arvo määräytyy seuraavasti: guest=<YKSIKKÖ>/<TIETOKANTA>/<KALENTERITYYPPI>
- <YKSIKKÖ> = selailunäkymässä näytetään vain tämän yksikön tilat. Parametria voidaan käyttää myös
vaihtoehtoisen selailijaroolin valintaan. Tarkempia tietoja useiden selailijaroolien käytöstä
löydät tilavarausohjelmiston käyttöohjeista.
- <TIETOKANTA> = asiakastietokantasi nimi. Tämä parametri tarvitaan, koska samalla palvelimella voi olla käytössä useita tietokantoja.
- <KALENTERITYYPPI> = oletusarvoisesti päävalikossa avattuna näytettävä kalenterityyppi. Mahdollisia arvoja ovat:
- tila = tilakalenterit
- hlo = henkilökalenterit
- lk = ohjelma/ryhmäkalenterit
Kielen valinta selailunäkymään tapahtuu lisäämällä urliin "lang"-parametri.
Esimerkiksi englanninkielisen valikon saa näkyviin parametrilla "&lang=eng".