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 | ||