Inleiding Aangezien het systeem bestaat uit een database, programmacode, en gebruikers data zijn er verschillende mogelijkheden: - Nieuwe installatie, vertrekkend van niets - Installatie van nieuwe software met behoud bestaande data - Importeer data in bestaand systeem In het algemeen worden volgende stappen gevolgd:
Nieuwe installatie 1. Beginsituatie basissysteem LAMP = Linux Apache MySQL PHP Er is genoeg informatie beschikbaar hoe je die software kan vinden, downloaden of kopen, en installeren, zowel op het internet als in boekvorm. - Warm aanbevolen is ook een hulpmiddel als phpMyAdmin of webmin om de databank(server) te beheren, controleren enz. * Linux: - installatie heeft make, automake, autoconf nodig, zo nodig installeren - root rechten om configuraties te doen en rechten in te stellen. * Apache: - controleer of de symlinks gevolgd worden (httpd.conf bij Directory met webdocumenten +FollowSymLinks) - kijken wat webserver root is ( bv RH /var/www/ of SuSE /srv/www/ deze is niet bereikbaar van buitenaf met browser) - kijken wat document root is ( bv RH /var/www/html of SuSE /srv/www/htdocs - deze is bereikbaar via de browser) - mogelijk recht nodig om serverdiensten te herstarten na herconfiguratie * MySQL - rechten om een database en een gebruiker te maken. * PHP - php. ini wijzigen : register_globals=Off op register_globals=On zetten - php.ini onder paths and directories, include_path="" 2 paths bijzetten in de serverroot: webserverroot/sds en webserverroot/phplib include_path=".:webserverroot/sds:webserverroot/phplib Het kan zijn dat je server protesteert omdat die nog niet bestaan; je kan het ook later aanpassen. 2. Bestanden afhalen ... Zie download op website. Kies de gewenste versie. Om vanaf nul te beginnen zijn volgende bestanden nodig: (de "x" staat voor een versienummer - verandert geleidelijk) sds-x.x.tar.gz noxqs-x.x.tar.gz noxqs_data.tgz ... en uitpakken 3. Configuratiescript aanpassen Behalve de gewone "configure" met parameters te laten lopen, kan je ook de parameters in een shell script zetten, waarmee de configure wordt uitgevoerd. Een voorbeeld staat in "startconfigwithpar.sh", pas dat aan. In het configure shell script de juiste waarden invullen voor : - prefix: httpd server root directory - directory naam van het project (vrij: zie werkelijke directory naam) - sitename (bv domeinnaam - vrij) - theme dat standaard gebruikt zal worden : zie bestaande theme-naam - database naam : NOXQS - database user (vrij) - database user password (zoals gemaakt) 4 . Voer SDS installatie uit (mag vanuit user directory) startconfigwithpar.sh (of configure en zelfs parameters meegeven) daarna: make en dan als root (su, password root): make install cache directory en sub's daarvan moet schrijfbaar zijn voor webserver (of schrijfbaar gemaakt worden Suse: wwwrun, www of RH: apache, apache), vb als root: cd /srv/www/htdocs/sds chown -R wwwrun cache chgrp -R www cache) Als tussendoor opnieuw begonnen moet worden na foutmelding, en voorbije installatie moet verwijderd worden: "make dist clean" Als thema's meegenomen moeten worden of bijgemaakt zijn; cache directory maken en theme directory kopieren De directories sds en phplib komen in de webserver root. In de document root komt - een applicatiedirectory voor noxqs (bv www/html/noxqs) In de noxqs applicatiedirectory komt - een indexpagina om in te loggen - een link naar de theme directory van sds - een link naar de utils directory van sds - ... In php.ini onder include_path="" 2 paths bijzetten in de serverroot: webserverroot/sds en webserverroot/phplib; let op dat de huidige directory, weergegeven door een "." niet blijft staan, de directory-namen worden gescheiden door een dubbel punt ":". Waarschijnlijk is het nodig om de webserver te herstarten (bv /etc/rc.d/apache restart) Gebruiker aanmaken volgens gegevens in configure script; (log in op MySQL server met client mysql) GRANT ALL ON NOXQS.* TO noxqsapp@localhost IDENTIFIED BY "noxqspassword" WITH GRANT OPTION; Query OK, 0 rows affected (0.06 sec) Databases aanmaken newsystem importeren mysql noxqs -p < newsystem.sql De directory zou er nu zo ongeveer moeten uitzien:
Dit is het basissysteem waarop nu de eigenlijke applicatiecode en bijhorende parameters moeten toegepast worden. Aangezien die allemaal in de database zitten, moet die gemaakt worden met de nodige presets - of gemakkelijker: geimporteerd van een bestaande voorbeeld of beginsituatie. 5 Installeer Noxqs: ofwel bestaande kopie ofwel nieuwe (leeg) Kopie maken: Kopie maken van de databases met mysqldump sds- en applicatie database. De namen van de databases zijn NOXQS NOXQS_DB (voorlopig letterlijk zo over te nemen) mysqldump --complete-insert --add-drop-table -p NOXQS >bu_noxqs20040316 mysqldump --complete-insert --add-drop-table -p NOXQS_DB >bu_noxqs_db20040316 ps: dump parameters: zie makefile.am in sds/db directory dumpnew om nieuw systeem te maken dumpmod om alleen de data te dumpen en nadien in te voeren dumplogin: het wijzigen van login-scherm: minder prominent op site aanwezig Overbrengen naar een andere machine; vb: scp ./bu_noxqs20040316 root@192.168.1.218:/root/bu_noxqs20040316 scp ./bu_noxqs_db20040316 root@192.168.1.218:/root/bu_noxqs_db20040316 Zie Makefile.am Bij nieuwe moet een user bijgemaakt worden auth_md5 configure script "makefiles voor installatie": configure make make install Om vanuit source directory een nieuw te installeren. cache directory writable maken voor webserver. Nieuwe installatie Database maken. mysqladmin create NOXQS -p mysql NOXQS -p < newsystem.sql met rechten admin. Start-admin verwijderen of password verzetten. Daarna cache all of cache system: alles wat met nieuw systeem geimporteerd is cachen. mysql -p < user.sql maakt standaard user (admin/admin) voor het SDS systeem Daarmee maak je je echte user aan met rechten admin. Start-admin verwijderen of password verzetten. Daarna cache all of cache system: alles wat met nieuw systeem geimporteerd is cachen. |
Bestanden: Instellingen moeten gebeuren in php.ini configure src/sds/db/Makefile noxqs/path_config.php noxqs/config.php Nodig: Linux Apache MySQL Php Handig: PhpMyAdmin WebMin * Linux: - verschillende distributies zijn al uitgeprobeerd, ik werk vooral op RedHat/Fedora Core en Novell/Suse. * Apache: - of Apache werkt kan je dat zien door op de computer zelf http://localhost/ in de browser op te roepen (of het ip adres vanop een andere pc). * MySQL: - of mysql server werkt kan je zien door in te loggen of de versie op te vragen mysql -V op de command prompt. * PHP - php moet samenwerken met je webserver (Apache), is een module "php_mod", en info krijg je met phpinfo() in een php-pagina op de server. |