Dit geeft de verschillen weer tussen de geselecteerde revisie en de huidige revisie van de pagina.
| — |
networking:internet:webhosting-rollen [2018/12/31 14:11] (huidige) |
||
|---|---|---|---|
| Regel 1: | Regel 1: | ||
| + | ====== Webhosting Systemen en Functionele Rollen ====== | ||
| + | |||
| + | ===== 1. Webhosting Systemen ===== | ||
| + | |||
| + | Er zijn twee methoden om een website te realiseren: | ||
| + | |||
| + | - statische HTML pagina's | ||
| + | - Applicatiegestuurd (Content Management System) | ||
| + | |||
| + | De eerste methode is veruit de eenvoudigste methode.\\ | ||
| + | De tweede methode biedt meer mogelijkheden, maar is ook ingewikkelder | ||
| + | te configureren en beheren. | ||
| + | |||
| + | |||
| + | ==== 1.1 Webhosting met statische HTML pagina's ==== | ||
| + | |||
| + | Bij webhosting met statische HTML | ||
| + | ((HTML bestanden zijn tekstbestanden geschreven in de | ||
| + | HyperText Markup Language (HTML) taal.)) | ||
| + | pagina's staan de pagina's van de | ||
| + | website als HTML bestanden op de webserver. | ||
| + | ((Webserver:\\ 1: Computer/server gebruikt voor webservices. \\ | ||
| + | 2: Programma op de computer/server dat de HTML data naar de Webbrowser | ||
| + | van de gebruiker stuurt.)) | ||
| + | |||
| + | Het opvragen van een webpagina gaat als volgt: | ||
| + | |||
| + | - De Webbrowser ((Voorbeelden van Webbrowser zijn: Internet Explorer, Firefox, Safari, Google Chrome)) van de gebruiker vraagt via het HTTP protocol een HTML pagina aan de Webserver (bijv. Apache). | ||
| + | - De Webserver leest het betreffende HTML bestand. | ||
| + | - De Webserver stuurt de HTML data naar de Webbrowser. | ||
| + | - De Webbrowser interpreteert de HTML data en toont de opgemaakte pagina aan de gebruiker. ((De rol van de Webbrowser in de opmaak van de pagina kan heel ver gaan. | ||
| + | Naast HTML kunnen de bestanden op de webserver JavaScript, Java | ||
| + | of Flash code bevatten. De Webbrowser moet deze programmacode uitvoeren. | ||
| + | De belasting van de computer van de gebruiker kan hierdoor hoog | ||
| + | oplopen. Met name Flash is een processor "vreter"!)) | ||
| + | |||
| + | De Webserver fungeert hier als bestandsserver. | ||
| + | |||
| + | Het beheer van een website is eenvoudig: de redactie beheert de HTML | ||
| + | bestanden op de webserver. | ||
| + | |||
| + | |||
| + | ==== 1.2 Webhosting Applicatiegestuurd (CMS) ==== | ||
| + | |||
| + | === 1.2.1 Inleiding Applicatiegestuurde systemen === | ||
| + | |||
| + | Hoewel het oorspronkelijke concept van het World Wide Web | ||
| + | ((Tim Berners-Lee 1990 [[http://en.wikipedia.org/wiki/WWW]])) | ||
| + | gebaseerd was op statische HTML pagina's, bleek het concept ook | ||
| + | een succes als platform voor client/server applicaties. | ||
| + | ((client/server: Concept waarbij een programma op de computer van de | ||
| + | gebruiker (client) communiceert met een programma op een computer/server.)) | ||
| + | ((Een sleutelrol in het succes was de brede beschikbaarheid van de | ||
| + | Webbrowser op de computer/client (PC). \\ | ||
| + | Een hinderpaal bij het gebruik van het client/server concept is, | ||
| + | dat de applicatie niet kan werken zonder een clientprogramma op | ||
| + | iedere computer/client. | ||
| + | Dit betekende aanvankelijk dat op iedere computer/client | ||
| + | software ge_i:nstalleerd _e'n onderhouden moest worden: | ||
| + | een aanzienlijke beheerinspanning! | ||
| + | Toen echter gebruik gemaakt kon worden van de toch al op vrijwel | ||
| + | elke computer/client ge_i:nstalleerde Webbrowser kwam | ||
| + | deze inspanning te vervallen. | ||
| + | En zo leidde het succes van het World Wide Web tot een snelle | ||
| + | acceptatie van het client/server concept voor applicaties.)) | ||
| + | Op _e'_e'n punt moest het oorspronkelijke concept worden aangepast: | ||
| + | het HTTP protocol was niet ontworpen om informatie over de | ||
| + | sessie en de client bij te houden (session-ID, authorisatie, | ||
| + | gebruikersvoorkeuren, enz.). | ||
| + | Dit probleem werd opgelost via het "HTTP cookie" concept: | ||
| + | de Webserver stuurt hierbij "cookies" (data) naar de Webbrowser. | ||
| + | Vervolgens stuurt de Webbrowser deze cookies met iedere pagina-aanvraag | ||
| + | mee naar de Webserver. | ||
| + | |||
| + | De procedure voor het opvragen van een webpagina uit een Applicatiegestuurd | ||
| + | systeem lijkt sterk op die voor het opvragen van een statische HTML pagina: | ||
| + | |||
| + | - De Webbrowser van de gebruiker vraagt via het HTTP protocol een HTML pagina aan de Webserver. | ||
| + | - ** De Webserver geeft de aanvraag door aan de Applicatie.** | ||
| + | - ** De Applicatie op de webserver genereert de HTML data.** | ||
| + | - De Webserver stuurt de HTML data naar de Webbrowser. | ||
| + | - De Webbrowser interpreteert de HTML data en toont de opgemaakte pagina aan de gebruiker. | ||
| + | |||
| + | Bij een Applicatiegestuurd systeem wordt de HTML data gegenereerd | ||
| + | ((genereren: Het door een programma automatisch produceren van data | ||
| + | op basis van brondata. De bedoeling is dat het onderhouden van de | ||
| + | brondata minder werk is, dan het onderhouden van de uiteindelijke data.)) | ||
| + | door de Applicatie. | ||
| + | De Applicatie bepaalt hoe de webpagina's er uit zien.\\ | ||
| + | De Webserver fungeert hier als doorgeefluik.\\ | ||
| + | De rol van de Webbrowser is niet anders dan bij de methode met | ||
| + | statische HTML pagina's. | ||
| + | |||
| + | We onderscheiden twee varianten Applicatiegestuurde systemen: | ||
| + | |||
| + | * Bestandsgebaseerde systemen | ||
| + | * Database gebaseerde systemen | ||
| + | |||
| + | == Bestandsgebaseerde systemen == | ||
| + | |||
| + | Bij bestandsgebaseerde systemen leest de Applicatie de benodigde | ||
| + | data uit bestanden en genereert op basis hiervan de gevraagde HTML data.\\ | ||
| + | De opmaak (taal) van de bestanden wordt bepaald door de Applicatie. | ||
| + | |||
| + | Enkele voorbeelden van bestandsgebaseerde systemen: | ||
| + | |||
| + | * CMSimple (CMS) | ||
| + | * DokuWiki (Wiki) | ||
| + | |||
| + | == Database gebaseerde systemen == | ||
| + | |||
| + | Bij database gebaseerde systemen leest de Applicatie de benodigde | ||
| + | data uit een (SQL) Database | ||
| + | ((Een database slaat data op een gestructureerde manier op, | ||
| + | zodat er gemakkelijk in gezocht kan worden. | ||
| + | Een SQL database leest en schrijft in de database d.m.v. de SQL taal.)) | ||
| + | en genereert op basis hiervan de gevraagde HTML data. | ||
| + | |||
| + | Database gebaseerde systemen zijn ingewikkelder in het beheer dan | ||
| + | bestandsgebaseerde systemen. \\ | ||
| + | De informatie in de Database is alleen toegankelijk via | ||
| + | het Database Management System (DBMS). | ||
| + | Bij een SQL gebaseerde Database vereist dit kennis van de SQL taal. \\ | ||
| + | Ook het maken van een backup van data uit een Database is ingewikkelder | ||
| + | dan het archiveren van bestanden. | ||
| + | Er moet eerst een "dump" van de Database data worden gemaakt in een bestand. | ||
| + | Dit dump-bestand kan vervolgens worden gearchiveerd.\\ | ||
| + | Om een Database gebaseerd systeem te kunnen beheren is dus kennis van de | ||
| + | Applicatie _e'n van het gebruikte DBMS noodzakelijk. | ||
| + | |||
| + | Enkele voorbeelden van database gebaseerde systemen: | ||
| + | |||
| + | * Drupal (CMS) | ||
| + | * Joomla (CMS) | ||
| + | * phpScheduleit (reserveringssysteem) | ||
| + | |||
| + | Veel gebruikte Open Source Database Management Systemen (DBMS): | ||
| + | |||
| + | * MySQL | ||
| + | * PostgreSQL | ||
| + | |||
| + | === 1.2.2 Content Management Systemen (CMS) === | ||
| + | |||
| + | Content Management Systemen zijn applicaties, die een webhosting | ||
| + | systeem met statische HTML pagina's nabootsen. \\ | ||
| + | De bedoeling is om extra functionaliteit te kunnen bieden, bijv.: | ||
| + | |||
| + | * Redactioneel: | ||
| + | * Delegeren van redactionele taken ((Redacteuren kunnen via een login | ||
| + | toegang tot een deel van de website krijgen.)) | ||
| + | * Editen van pagina's zonder expert kennis van HTML, CSS, JavaScript, etc. ((I.p.v. HTML biedt het CMS een eenvoudiger opmaaktaal veelal met grafische interface.)) | ||
| + | * Structuur en opmaak: | ||
| + | * Uniforme paginastructuur (bedrijfslogo, menus, pagina indeling) | ||
| + | * Uniforme opmaakstijl (fonts, koppen, voetnoten) | ||
| + | * Ge_i:ntegreerde applicaties: | ||
| + | * Forum | ||
| + | * Gastenboek | ||
| + | |||
| + | Maar al deze functionaliteit heeft wel een prijs: complexiteit! | ||
| + | Overschakelen van een webhosting systeem met statische pagina's | ||
| + | naar een CMS resulteert in een geheel nieuwe beheerlaag: | ||
| + | [[#Applicatie- en Database beheerder|Applicatiebeheer]]. | ||
| + | Waar het bij een webhosting systeem met statische HTML pagina's | ||
| + | voldoende is, dat de Webserver goed functioneert, vereist een | ||
| + | website met CMS tevens een goed werkende CMS applicatie. | ||
| + | Een fout in de configuratie kan een niet goed of zelfs een geheel | ||
| + | niet werkende website opleveren! \\ | ||
| + | |||
| + | |||
| + | ===== 2. Functionele Rollen ===== | ||
| + | |||
| + | ==== 2.1 Internet Service Provider (ISP) ==== | ||
| + | |||
| + | De Internet Service Provider (ISP) beschikt over breedbandige Internet | ||
| + | verbindingen (trunks) en verkoopt deze bandbreedte door aan haar klanten: | ||
| + | |||
| + | * Internet aansluitingen voor bedrijven (DSL, glasvezel) | ||
| + | * Internet aansluitingen voor particulieren (ADSL, Kabel-TV) | ||
| + | * Hosting Providers (zie hieronder) | ||
| + | |||
| + | Daarnaast verleent de ISP Internet Domein registratie faciliteiten. | ||
| + | |||
| + | Voorbeelden van ISP's: | ||
| + | |||
| + | * KPN | ||
| + | * XS4ALL | ||
| + | * Ziggo | ||
| + | |||
| + | |||
| + | ==== 2.2 Hosting Provider ==== | ||
| + | |||
| + | === 2.2.1 Inleiding === | ||
| + | |||
| + | Hosting betekent gastheerschap. | ||
| + | Een Hosting Provider biedt zijn klanten faciliteiten voor het | ||
| + | huisvesten van hun websites en applicaties.\\ | ||
| + | Er zijn verschillende vormen: | ||
| + | |||
| + | * Verhuur van capaciteit op een computer/server van de Hosting Provider (Shared Hosting) | ||
| + | * Verhuur van fysieke ruimte en Internet bandbreedte t.b.v. eigen computer/server(s) van de klant (Dedicated Hosting) | ||
| + | * Verhuur van een deel van een computer/server van de Hosting Provider (Virtual Hosting) | ||
| + | * Cloud Computing (Virtual Hosting in the Cloud) | ||
| + | |||
| + | Voorbeelden van Hosting Providers: | ||
| + | |||
| + | * Integrated Services/Tux4u(r) | ||
| + | * WideXS | ||
| + | * XS4ALL | ||
| + | |||
| + | === 2.2.2 Capaciteit op computer/server(s) Hosting Provider (Shared Hosting) === | ||
| + | |||
| + | De Hosting Provider verhuurt capaciteit en biedt services op zijn | ||
| + | computer/server(s): | ||
| + | |||
| + | * Processor capaciteit | ||
| + | * Diskruimte | ||
| + | * Internet bandbreedte | ||
| + | * Optionele services: | ||
| + | * Webserver (bijv. Apache) | ||
| + | * Database services (MySQL, PostgreSQL) | ||
| + | * E-mail service | ||
| + | * SSH (dialoog en bestandstranfer) | ||
| + | * Backup services | ||
| + | * Optionele programmeeromgevingen: | ||
| + | * PHP | ||
| + | * Perl | ||
| + | * Java | ||
| + | |||
| + | De Hosting Provider is verantwoordelijk voor het technisch operationeel | ||
| + | houden van zijn computer/server(s) en de hierop aangeboden diensten | ||
| + | voor de klant. | ||
| + | |||
| + | === 2.2.3 Eigen computer/server(s) van de klant (Dedicated Hosting) === | ||
| + | |||
| + | De Hosting Provider biedt: | ||
| + | |||
| + | * Fysieke kastruimte t.b.v. de server van de klant | ||
| + | * Internet bandbreedte | ||
| + | * Stroom (noodstroomvoorziening: UPS) | ||
| + | |||
| + | In beginsel is de klant zelf verantwoordelijk voor het beheer van zijn | ||
| + | eigen computer/server(s). | ||
| + | |||
| + | === 2.2.4 Virtuele server (Virtual Hosting) === | ||
| + | |||
| + | De Hosting Provider verdeelt zijn fysieke computer/server(s) in | ||
| + | virtuele servers. | ||
| + | De klant huurt een virtuele server.\\ | ||
| + | Afhankelijk van het type virtuele server gedraagt de virtuele server | ||
| + | zich min of meer gelijk aan een eigen fysieke server.\\ | ||
| + | Het belangrijkste voor de klant is, dat hij zijn eigen applicaties | ||
| + | en services kan installeren. | ||
| + | De klant is dus niet afhankelijk van wat de Hosting Provider hem | ||
| + | standaard aanbiedt. | ||
| + | De kosten van een virtuele server zullen daarentegen in de regel lager zijn | ||
| + | dan de totale kosten (provider huur + afschrijving server) van een | ||
| + | eigen server. | ||
| + | |||
| + | === 2.2.5 Cloud Computing (Virtual Hosting in the Cloud) === | ||
| + | |||
| + | De klant kan zelf virtuele servers aanmaken op de fysieke computer/server(s) | ||
| + | van de Hosting Provider.\\ | ||
| + | De klant weet niet op welke fysieke computer/server een virtuele server | ||
| + | draait.\\ | ||
| + | De Hosting Provider kan (automatisch) virtuele servers verplaatsen | ||
| + | naar andere fysieke computer/server(s). | ||
| + | (Bijv. om de fysieke servercapaciteit beter te gebruiken.) | ||
| + | |||
| + | Afhankelijk van het netwerk van de Hosting Provider kan Cloud Computing | ||
| + | over landsgrenzen heengaan. | ||
| + | Dit kan betekenen dat de klant (mogelijk zonder zich hiervan bewust te zijn) | ||
| + | te maken kan krijgen met nationale regelgeving | ||
| + | (bijv. in het kader van terrorismebestrijding) in andere landen (bijv. VS). | ||
| + | |||
| + | |||
| + | ==== 2.3 Applicatie- en Database beheerder ==== | ||
| + | |||
| + | De Applicatie- en Database beheerder is verantwoordelijk | ||
| + | voor het technisch operationeel houden van de Applicatie.\\ | ||
| + | Applicatie- en Database beheer zijn op zich twee functionele gebieden, | ||
| + | maar zijn zo nauw met elkaar verweven dat ze vaak in _e'_e'n hand | ||
| + | worden gelegd. | ||
| + | |||
| + | Applicatie beheer omvat o.a: | ||
| + | |||
| + | * Installeren | ||
| + | * Configureren | ||
| + | * Upgraden | ||
| + | * Patchen (verhelpen van fouten in de software) | ||
| + | * Backup | ||
| + | * Restore (terugzetten van een backup) | ||
| + | * Problemen oplossen | ||
| + | |||
| + | Database beheer omvat o.a: | ||
| + | |||
| + | * Backup | ||
| + | * Restore (terugzetten van een backup) | ||
| + | * Patchen (database structuur wijzigen) | ||
| + | * Problemen oplossen | ||
| + | |||
| + | Benodigde kennis en vaardigheden: | ||
| + | |||
| + | * Gedegen kennis van de Applicatie (bijv. Joomla) | ||
| + | * Kennis en vaardigheid m.b.t. het gebruik van het DBMS (bijv. MySQL) | ||
| + | * Elementaire kennis van het besturingssysteem (bijv. Linux) | ||
| + | |||
| + | |||
| + | ==== 2.4 Website Redactie ==== | ||
| + | |||
| + | De Website redactie is verantwoordelijk voor de inhoud van de website.\\ | ||
| + | Vergelijk de Website redactie met de redactie van een krant. | ||
| + | |||
| + | |||
| + | ====== . ====== | ||
| + | Copyright (c) 2011 Integrated Services; Tux4u.nl\\ | ||
| + | Author: Marjan Waldorp; webhosting-rollen 2011-11-03 | ||