Advertentie
Voor de gemiddelde internetsurfer is het bekijken van webinhoud eenvoudig. U opent een browser, typt een URL in en voila! De pagina verschijnt. Maar aan de andere kant is er software die hard werkt om die pagina voor u te presenteren. En een groot aantal van die servers maakt gebruik van inhoudbeheersystemen om uw favoriete inhoud te maken en weer te geven.
Wat gebeurt er eigenlijk als je een pagina uit een CMS 'opent'? Laten we eens kijken naar de verschillende delen van de systemen die inhoud naar uw scherm brengen.
Het vroege web
Verbeteringen in webhosting
Eind jaren negentig - toen het web stoom begon te krijgen - hadden veel van de componenten die gebruikers in staat stelden toegang hun favoriete webinhoud gemakkelijk. Dingen waren vooruitgegaan van het rechtstreeks ophalen van webpagina's van hostingservers naar een geavanceerder systeem:
- Gemakkelijkere toegang tot de registratie van het Domain Name System via privé-entiteiten, waardoor de willekeurige labels die we nu kennen als domeinnamen kunnen worden gekoppeld aan IP-adressen. Hierdoor konden gebruikers gemakkelijk hun favoriete sites vinden.
- Het HyperText Transfer Protocol (HTTP) bood een standaardmethode voor het verzenden van informatie via internet. Dit maakte het de moeite waard voor individuen en organisaties om hun inhoud beschikbaar te maken in HTML, zodat iedereen het kon lezen met een compatibele browser.
- Er zijn webservers verschenen die tot doel hebben te wachten op verzoeken om webpagina's en de pagina terug te sturen. Hierdoor konden beheerders eenvoudig hun hostingomgevingen schalen en beveiligen.
Gedurende deze tijd werden browsers gratis beschikbaar gesteld door internetproviders zoals AOL onbeperkte inbeltoegang en gebruikers migreerden van een gesloten gemeenschap (zoals BBS-systemen) naar open, webgebaseerd inhoud. Maar ondanks de vraag naar informatie had een deel van het ecosysteem nog steeds te lijden.
Tekortkomingen in webauthoring
Het proces voor het maken van al die vroege websites was nog steeds gericht op handgemaakte pagina's in HTML. Dit resulteerde vaak in inline styling en veel zeer aangepaste codering, vooral voor de "dynamische" sites van de dag (bijvoorbeeld e-commerce in talen zoals Perl). Daarnaast is het proces van publiceren een website vereiste nog technische kennis van FTP-transfers en webhosting.
Vervolgens begon meer door gebruikers gegenereerde inhoud te verschijnen in de vorm van 'profielsites' zoals Yahoo en MySpace. Bloggen-services zoals Blogger en LiveJournal gingen nog een stap verder, terwijl desktop "webpagina-editors" het mogelijk maakten om een (slecht uitziende) webpagina te maken zonder enige opmaak te kennen. Deze inspireerden de hedendaagse content management systemen voor algemene doeleinden, waarmee gebruikers gemakkelijk:
- Maak nieuwe pagina's met uitgebreide opmaak.
- Rangschik de pagina's in een sitehiërarchie.
- Beheer de media op pagina's, zoals afbeeldingen.
- Sta andere gebruikers toe om met de site te communiceren, tot en met het schrijven van hun eigen pagina's.
In de volgende secties bekijken we precies hoe een CMS deze taken zo eenvoudig maakt.
Onderdelen van een CMS
Er zijn tegenwoordig vele tientallen CMS-toepassingen beschikbaar, maar de meeste hebben het volgende gemeen:
- Ze zijn gebouwd in een bepaalde programmeer- / scripttaal. In tegenstelling tot HTML, dat is alleen opmaak, een programmeertaal stelt webpagina's in staat bewerkingen uit te voeren, zoals bepalen wie ze probeert te gebruiken, of het ophalen van resultaten op basis van een zoekopdracht.
- Ze gebruiken een database Dus wat is een database eigenlijk? [MakeUseOf Explains]Voor een programmeur of een technologieliefhebber is het concept van een database iets dat vanzelfsprekend is. Voor veel mensen is het concept van een database echter een beetje vreemd ... Lees verder om de inhoud van de pagina's, lijsten met gebruikers / wachtwoorden of de invoer van formulierinzendingen op te slaan.
- Ze gebruiken een webserver Hoe u een Apache-webserver instelt in 3 eenvoudige stappenWat de reden ook is, misschien wilt u op een gegeven moment een webserver aan de gang krijgen. Of je jezelf nu op afstand toegang wilt geven tot bepaalde pagina's of services, je wilt een community krijgen ... Lees verder . Het zal de paginabestanden (en hun programmering) uitvoeren en de resulterende HTML terugsturen naar de browser van de bezoeker.
We zullen elk van deze hieronder om beurten bekijken.
CMS-programmeertalen
Een van de belangrijkste verschillen tussen verschillende CMS-en is de programmeertaal die ze ondersteunen Welke programmeertaal om te leren - WebprogrammeringVandaag gaan we kijken naar de verschillende webprogrammeertalen die het internet van stroom voorzien. Dit is het vierde deel van een programmeerserie voor beginners. In deel 1 leerden we de basis van ... Lees verder . Programmeertalen worden gebruikt om de site "dynamisch" te maken, dat wil zeggen voert berekeningen of andere logica uit. Deze bewerkingen kunnen zo simpel zijn als het weergeven van het huidige jaar in het copyright van de voettekst voor het toevoegen en weergeven van numerieke rapporten.
Er is ten minste één CMS voor alle grote webprogrammeertalen, waaronder:
- PHP:WordPress, Drupal, Joomla
- ASP.NET:DotNetNuke (DNN CMS), Umbraco
- Python:Django, Plone
- Java:Alfresco, Magnolia
Van deze talen (en andere), PHP Leer bouwen met PHP: een spoedcursusPHP is de taal die Facebook en Wikipedia gebruiken om dagelijks miljarden verzoeken te verwerken; de de facto taal die wordt gebruikt om mensen webprogrammering te leren. Het is prachtig eenvoudig, maar briljant krachtig. Lees verder is om een aantal redenen de koploper geworden voor het maken van contentmanagementsystemen. Ten eerste is het open source, wat in het begin niet van alle talen kon worden gezegd. Als gevolg hiervan was het een taal die gratis was opgenomen in veel van de goedkope hostingplannen waar kleinere sites wonen. Bovendien is het in de meeste gevallen een gemakkelijke taal om mee te beginnen, waardoor nieuwe gebruikers hun eigen functionaliteit op hun sites kunnen hacken. Ten slotte bevatte de Apache-webserver al vroeg PHP als module. Dus het opzetten van 's werelds toonaangevende webserver was snel en eenvoudig.
Terwijl sommige andere talen vooruitgang hebben geboekt tegen de voorsprong van PHP (.NET is nu open source Een GNU die begint voor Microsoft: wat een open source .NET Framework betekent voor de rest van onsMicrosoft heeft zojuist een aanzienlijk deel van zijn code vrijgegeven onder een permissieve open source-licentie. Deze stap breekt met jarenlange traditie. Maar waarom en wat betekent het voor jou? Lees verder , bijvoorbeeld), zal het enige tijd duren voordat ze een aanzienlijk marktaandeel veroveren van bijvoorbeeld WordPress.
CMS-databases
De programmeertaal van een bepaald CMS speelt ook een rol in welke database (s) het ondersteunt of ronduit vereist. PHP heeft uitstekende ondersteuning voor MySQL Een stapsgewijze MySQL-zelfstudie voor zelf-gehoste WordPress-bloggersAls je een blogger bent, is de kans groot dat je WordPress gebruikt. Er zijn twee manieren waarop u WordPress kunt gebruiken, ideaal voor mensen met wat technische knowhow en mensen zonder. De eerste is om ... Lees verder , hoewel de CMS'en die het gebruiken vaak kunnen worden gemaakt om te werken met PostgreSQL of SQLite Leer SQL of maak een eenvoudige database met SQLite Database BrowserHeb je ooit een database nodig gehad, maar je kunt Microsoft Access niet echt betalen, en je kunt het je zeker niet veroorloven om thuis een Oracle-server te installeren en te gebruiken. Of je doel nu is ... Lees verder ook. Evenzo ondersteunt DNN CMS Microsoft SQL Server, terwijl Alfresco bedrijfs- en Java-vriendelijke databases ondersteunt, zoals Oracle en db2. Uiteindelijk kan de database die u voor een CMS gebruikt, ook worden aangestuurd door wat uw hostingomgeving ook biedt. Een hostingaccount voor uw blog zal MySQL vrijwel zeker voor u beschikbaar maken, terwijl uw bedrijf mogelijk alleen Oracle gebruikt.
Een database slaat het grootste deel van de inhoud op voor de meeste CMS'en, met uitzondering van de applicatiebestanden (paginasjablonen, add-ons, enz.), Media (afbeeldingen en video) en bepaalde configuraties. Maar de tekst op een bepaalde pagina, evenals de paden naar mediabestanden en de URL waar deze zich bevindt, wordt vaak opgeslagen in DB-tabellen.
CMS-webserver
Ten slotte is een CMS een webtoepassing en vereist daarom een webserver. Door het gebruik van verschillende modules kan Apache alle vier de bovengenoemde talen en meer ondersteunen. Nieuwere webservers worden steeds populairder De beste Linux-webserver-software (& Apache-alternatieven) Lees verder , zoals nginx en lighttpd, ondersteunen ook verschillende sets talen door add-ons.
De webserver zal dat doen uitvoeren de bestanden van de site. Deze bestandstypen (.PHP, .JSP, enzovoort) zijn meestal alleen HTML-opmaak 17 eenvoudige HTML-codevoorbeelden die u in 10 minuten kunt lerenWilt u een eenvoudige webpagina maken? Leer deze HTML-voorbeelden en probeer ze uit in een teksteditor om te zien hoe ze eruitzien in uw browser. Lees verder met programmeertaal code gemengd. Terwijl de webserver de pagina verwerkt, voert hij de programmatische code uit die hij tegenkomt met behulp van de module / add-on voor die taal. Tegen de tijd dat het klaar is met het verwerken van een pagina, is de programmeercode vervangen door een soort browservriendelijke inhoud.
Als je goed naar boven kijkt, kun je zien dat de code daadwerkelijk helpt bij het construeren van de pagina door de koptekst en paginasjabloon te 'ophalen'. Om de zaken ingewikkelder te maken, kan één bestand een of meer andere bestanden oproepen voor assistentie. Bij het bekijken van enkele daadwerkelijke verzoeken aan een CMS in de onderstaande secties, moet u er rekening mee houden dat het uitvoeren van "een PHP-bestand" er in feite veel kan inhouden.
Een CMS in actie
De eenvoudigste manier om een CMS te beschrijven, is door een paar voorbeeldbewerkingen te nemen en de stappen voor elk te doorlopen. Net als de afbeelding eerder beginnen deze processen met een verzoek om een pagina en eindigen met het verzenden van wat HTML (en CSS / Javascript) door de webserver naar de browser. Maar er zijn enkele stappen die we hieronder zullen onderzoeken, uitgaande van een op PHP gebaseerd CMS.
Een pagina aanvragen
De meest elementaire interactie met een CMS is dat een gewone gebruiker een van zijn pagina's opvraagt. Neem bijvoorbeeld Dit artikel 7 redenen om uw CMS te dumpen en een statische sitegenerator te overwegenJarenlang was het publiceren van een website voor veel gebruikers moeilijk. CMS's zoals WordPress hebben dat veranderd, maar ze kunnen nog steeds verwarrend zijn. Een ander alternatief is een Static Site Generator. Lees verder op MakeUseOf. Het heeft een URL, maar er is geen echt bestand in een map op die locatie. Wanneer de browser van de lezer om een URL vraagt, voert de webserver een van de CMS-PHP-bestanden uit, zoals een index.php het dossier.
De PHP-pagina verwerkt het verzoek door de database voor de CMS-pagina te doorzoeken met de overeenkomende URL in de metagegevens (nogmaals, er is geen echt bestand op de locatie van de URL). Vervolgens leest het de inhoud van de pagina (gewone tekst en afbeeldingen en widgets) en metagegevens (titel, welke sjabloon het gebruikt, enz.) uit de database en retourneer de HTML van de pagina voor de browser naar renderen. Kortom, het gebruikt de URL om te selecteren welk pagina record in de database gebruiken.
Inloggen
Op dezelfde manier kan een gebruiker die wil inloggen op de site (bijv. om een 'alleen voor leden'-pagina te bekijken Hoe u een website met alleen lidmaatschap kunt maken met Wordpress Lees verder ) moet referenties verstrekken. Wanneer ze proberen de betreffende pagina te bezoeken, zal de database rechten bevatten die aangeven dat de pagina een login vereist.
Bij het invoeren van een gebruikersnaam en wachtwoord op een pagina als login.php, zal het de database vragen naar het wachtwoord van de opgegeven gebruikersnaam, de vergelijking uitvoeren om ervoor te zorgen dat ze overeenkomen, en de gebruiker indien van toepassing terugsturen naar zijn gevraagde pagina.
Een pagina bijwerken
Het bijwerken van een pagina in een CMS vereist over het algemeen toegang tot het beheerscherm, het aanbrengen van wijzigingen in de inhoud van de pagina en het opnieuw opslaan / opnieuw publiceren ervan. WordPress bevat bijvoorbeeld de pagina wp-admin / post.php. Er wordt eerst gecontroleerd of de gebruiker is aangemeld en, zo ja, of de gebruiker een beheerder is. Vervolgens zal het in de database zoeken naar de inhoud die de pagina vertegenwoordigt die de gebruiker wil wijzigen, waarbij bewerkingsbesturingen zoals tekstgebieden en afbeeldingskiezers worden ingevuld.
De gebruiker kan communiceren met deze bedieningselementen (bijv. Tekst wijzigen of koptekstafbeeldingen vervangen) door op een knop "Opslaan" of "Publiceren" te klikken wanneer hij klaar is. Op dit punt neemt het admin-scherm de nieuwe ingevulde waarden en werkt deze bij in de database.
CMSes maken webauthoring toegankelijk
Hoewel het intern complexe applicaties zijn, maken CMS'en zoals WordPress aan de oppervlakte het schrijven op het internet gemakkelijk voor niet-technische gebruikers. Iemand die een simpele blog wil plaatsen kan zich aanmelden voor een goedkope hostingaccount, klik op een paar knoppen en binnen enkele minuten een CMS klaar hebben staan Hoe WordPress gratis op een virtuele server te installeren met Cloud9Installeer Wordpress in een virtuele omgeving met Cloud9-serverruimte. Geen codering vereist. U hoeft geen software te downloaden. U sleutelt binnen een paar minuten aan een WordPress-installatie. Lees verder . Voor een paar dollar meer kan het hostingbedrijf zelfs updates en onderhoud ervan beheren.
Host je een website of blog over een bepaald CMS? Maakt het hebben van een contentmanagementsysteem uw werk gemakkelijker? Of upload je liever gewoon HTML naar je hostingaccount zoals vroeger? Laat het ons weten in de reacties als je een CMS-liefhebber bent of een ouderwetse HTML-worstelaar.
Aaron is al vijftien jaar elleboog in technologie als bedrijfsanalist en projectmanager en is bijna net zo lang een loyale Ubuntu-gebruiker (sinds de Breezy Badger). Zijn interesses zijn onder meer open source, toepassingen voor kleine bedrijven, integratie van Linux en Android en computergebruik in platte-tekstmodus.