-
-
Index
Waarom powerbasic en xitami?
Keuze van de webserver
Er zijn talrijke webservers beschikbaar, dit is een lijst van webservers. Waarschijnlijk de meest gebruikte webserver is Apache, maar de configuratie ervan is niet zo eenvoudig. Er is wel veel hulp beschikbaar op het internet, maar je zit met het probleem dat je door het bos de bomen niet meer ziet. Bij Xitami heb je een online-handleiding dat alles behandelt.
Een andere mogelijkheid is Microsoft en IIS. Bij de eerste windows versies zat er een "personal web server" (PWS) bij, maar nu moet je de software apart kopen. Internet Information Server is een ingewikkelde boel geworden dat niet meer geschikt is voor de kleine, modale gebruiker. Microsoft programma's zijn per definitie onveilig en veel te complex voor wat ze moeten doen. Het is geweten dat een service pack je volledige instellingen in de war kan sturen, waardoor IIS niet meer werkt zoals het hoort. Voor een server schakel je best "automatic updates" uit! Ik kan ervan meespreken: een kritieke beveiligingsprogramma bleek niet meer te werken na een automatische update, maar ik kwam het pas later te weten, wanneer er al schade aan de server aangericht was.
Dit zijn de voordelen van Xitami:
- Het is gratis en zelfs open source, zodat het programma door talrijke gebruikers werd getest.
- Eenvoudig in te stellen via de web admin of door de configuratiefiles te wijzigen
- Talrijke mogelijkheden zoals user authentification, FTP, virtual hosts, server side image maps, user-defined MIME types, persistent connections (HTTP/1.1), customisable error messages, on-the-fly server reconfiguration, enz)
- Zeer klein processor en geheugengebruik. je kan de computer verder blijven gebruiken zonder te merken dat er een webserver draait.
- Xitami is redelijk veilig (alles wat met het internet verbonden kan maar ten hoogste "redelijk" veilig zijn). Bekende threats zijn dDOS (distributed denial of service), waarbij talrijke zombiecomputers een server platleggen door constant onmogelijke requests te sturen, maar alle servers worden daardoor getroffen. Bij de laatste Xitami versie (beta) zit er een bandbreedte beperking in, zodat de volledige bandbreedte niet opgesoupeerd wordt door een enkele computer.
- De handleiding is een van de beste in zijn soort (helaas enkel in het engels)
- Er is een mailing list waar je problemen kan posten (ook in het engels). Er zijn een paar oude ratten in het vak die wel een oplossing voor alle problemen hebben.
Xitami heeft echter ook nadelen:
- Het is gratis, dus geen support van de makers
- Bij het aanroepen van scripts (uitvoerbare programma's) zal iedere aanroep het starten van een nieuw programma tot gevolg hebben. Er is niet echt een support voor ISAPI (waarbij de server slechts een DLL moet laden in plaats van het volledig programma).
- De ingebouwde FTP server is niet zo stabiel als Xitami zelf. Bij zware belasting van de FTP server over een snelle verbinding (enkel LAN), is het geweten dat de server kan crashen.
- Er is geen ondersteuning voor GZIP (compressie), maar dit kan wel naderhand bijgevoegd worden
- Er is blijkbaar geen ontwikkeling van nieuwe versies meer.
Xitami is ideaal als server voor een kleine gemeenschap. Voor bedrijven is een oplossing dat meer gestandardiseerd is aan te raden.
Keuze van de programmeertaal
Eigenlijk kan je om het even welke taal gebruiken als back-end om je webpagina's dynamisch aan te maken. Bepaalde talen werden trouwens specifiek ontwikkeld voor deze taak, zoals PHP (Personal Home Page).
- Perl is een vaak gebruikte taal voor internet toepassingen.
- Als je een pagina opvraagt dat op .pl eindigd, dan roep je eigenlijk een perl script aan.
Maar perl is zeer moeilijk te gebruiken, en nog moeilijker om te debuggen. De taal is zeer compact: na een paar dagen weet je niet meer wat een instruktie zou moeten doen. Perl wordt voornamelijk op Unix-systemen gebruikt.
Perl is een script taal, dat wil zeggen dat iedere keer dat de pagina aangeroepen wordt de script gecompileerd moet worden (omgezet van tekst naar uitvoerbare instrukties).
- PHP (Personal Home Pages) is een zeer goede kandidaat voor een kleine server.
- Commando's worden gewoon in de HTML-kode ingevoegd en uitgevoerd voordat de pagina naar de gebruiker gestuurd wordt. PHP dankt zijn succes aan zijn eenvoud. PHP heeft de nadelen van een geïnterpreteerde taal, de HTML kode moet doorzocht worden en instrukties die eventueel aanwezig zouden zijn moeten uitgevoerd worden vooraleer de pagina doorgestuurd kan worden.
Het aantal instrukties is beperkt, en PHP kan geen bestanden lezen of schrijven: daarom moet je ook een SQL database op je server hebben vanaf het ogenblijk dat je maar iets wenst op te slaan (bijvoorbeeld het aantal bezoekers).
Forums draaien vaak met PHP (samen met MySQL voor de dataopslag) in een configuratie dat WAMP of LAMP genoemd wordt: Windows-Apache-MySQL-PHP of Linux-Apache-MySQL-PHP. Maar ik zal je bewijzen dat het ook eenvoudiger kan! (lees verder)
Servers met PHP zijn vaak het slachtoffers van hackers die je systeem kraken en dan bijvoorbeeld link-pagina's voor het verkopen van viagra of online casino's op je site plaatsen. Gebruik je PHP, dan moet je ervoor zorgen dat je wekelijks de patches installeert.
De laatste PHP interpreters werken met FastCGI, waarbij de interpreter constant in het geheugen blijft. FastCGI is een verbetering van de klassieke CGI waarbij bij iedere aanroep de applikatie geladen moet worden. Bij FastCGI blijft de applikatie (interpreter of effectieve script) in het geheugen.
- ASP (Active Server pages) is het alternatief van Microsoft op PHP, met hier ook opdrachten die ingebed worden in de HTML source.
- Microsoft levert een (naar mijn mening minderwaardig) alternatief op alle goede applikaties: Javascript heeft als alternatief VBScript (dat enkel in internet explorer draait, niet Firefox), het open document formaat (van bijvoorbeeld OpenOffice) krijgt concurrentie van een "open formaat" van Microsoft (dat eigenlijk gebaseerd is op commercieele, gesloten code).
Terwijl PHP gratis is moet je voor ASP betalen. ASP is nu ASPdotNET geworden, dus een zeer zware en lompe boel dat vanzelfsprekend enkel op IIS (internet information server) draait.
Xitami kan alle gecompileerde programmeertalen aan, zoals C++ en Visual Basic. Deze twee talen zijn echter veel te lomp voor hetgeen nodig is: Visual Basic programma's hebben een run time module nodig en C++ is redelijk moeilijk in het gebruik (C++ ondersteunt geen strings zoals basic dat doet). In dat opzichte is Powerbasic heelwat beter geschikt.
De voordelen van Powerbasic zal ik hier opsommen:
- Eenvoudige syntax, zelfs na een jaar zal je nog in staat zijn de betekenis van de kode te achterhalen. De taal is gebaseerd op de basic-syntax. Als je ooit met basic gewerkt hebt, dan zal je alle taalelementen terugvinden in powerbasic.
- Talrijke compexe funkties zijn ingebouwd zodat je een taak kan afhandelen in één regel. SORT, REPLACE, JOIN, PARSE, ... zijn kant-en-klare funkties.
- Powerbasic heeft een uitgebreide ondersteuning voor bestandstoegang. In vergelijking met vroegere basic-versies kan deze taal heelwat meer aan!
- De gegenereerde kode is compact (wordt dus sneller in het geheugen geladen) en wordt razendsnel uitgevoerd. De taal kan geoptimaliseerd worden voor webserver-toepassingen (daarover meer in een volgend hoofdstuk).
- Er is geen grafische user interface (GUI) dat geladen moet worden (forms in visual basic), want de user interface, dat is de internet explorer (of firefox, of opera, ...) bij de gebruiker. Een taal zonder GUI is een taal zonder extra ballast.
- Als je ooit de virus te pakken krijgt en op packet-niveau wenst te programmeren, dat kan zonder probleem met Powerbasic, want deze taal geeft je toegang tot de basiselementen van het operating system, de API-aanroepen, dat je kan vergelijken met de INT-13 aanroepen van een eeuw geleden.
Index
Individuele landingspage bezoekers: