För den genomsnittliga internet surfaren är det enkelt att visa webbinnehåll. Du öppnar en webbläsare, skriver in en webbadress och voila! Sidan visas. Men i andra änden är det programvara som arbetar hårt för att tjäna den sidan upp för dig. Och ett stort antal av dessa servrar utnyttjar innehållshanteringssystem för att skapa och tjäna ditt favoritinnehåll.
Vad händer faktiskt när du "öppnar" en sida från ett CMS? Låt oss titta på de olika delarna av systemen som ger innehåll till din skärm.
Den tidiga webben
Förbättringar i webbhotell
I slutet av 1990-talet - när webben började plocka upp ånga - hade många av komponenterna det möjligt för användarna att enkelt få tillgång till deras favoritwebbinnehåll. Saker hade utvecklats från att hämta webbsidor direkt från värdservrar till ett mer sofistikerat system:
- Lättare tillgång till domännamnssystemregistreringen via privata enheter, vilket möjliggjorde de godtyckliga etiketter som vi nu vet som domännamn som ska associeras med IP-adresser. Detta gjorde det enkelt för användarna att hitta sina favoritplatser.
- HyperText Transfer Protocol (HTTP) tillhandahöll en standard metod för att skicka information över internet. Detta gjorde det enkelt för enskilda och organisationer att göra innehållet tillgängligt i HTML, så att någon kunde läsa den med en kompatibel webbläsare.
- Webservrar uppträdde, vars syfte är att vänta på förfrågningar på webbsidor och skicka tillbaka sidan. Detta gjorde det enkelt för administratörer att skala och säkra sina värdmiljöer.
Under denna tid blev webbläsare tillgängliga gratis, internetleverantörer som AOL erbjöd obegränsad uppringd åtkomst och användare migrerade från stängda community (som BBS-system) för att öppna webbaserat innehåll. Men trots efterfrågan på information ledde en del av ekosystemet fortfarande.
Brister i webbförfattande
Processen för att skapa alla dessa tidiga webbplatser var fortfarande centrerad på handverktygssidor i HTML. Detta resulterade ofta i inline styling och mycket mycket anpassad kodning, särskilt för dagens "dynamiska" sidor (t.ex. e-handel gjord på språk som Perl). Dessutom krävde processen att publicera en webbplats teknisk kunskap om FTP-överföringar och webbhotell.
Sedan började mer användargenererat innehåll visas i form av "profil" -platser som Yahoo och MySpace. Bloggningstjänster som Blogger och LiveJournal tog det här ett steg längre, medan skrivbords "webbsidoredigerare" gjorde det möjligt att skapa en (dålig) webbsida utan att veta någon markering. Dessa inspirerade dagens system för innehållshantering, vilket gör att användarna enkelt kan:
- Skapa nya sidor med rik formatering.
- Ordna sidorna till en webbplatshierarki.
- Hantera media på sidor, till exempel bilder.
- Tillåt andra användare att interagera med webbplatsen, upp till och med att skapa egna sidor.
I följande avsnitt ser vi exakt hur ett CMS gör dessa uppgifter så enkla.
Komponenter av ett CMS
Det finns många dussintals CMS-applikationer tillgängliga idag, men de flesta har gemensamt följande:
- De är byggda i ett visst programmerings- / skriptspråk. I motsats till HTML, som endast är markup, tillåter ett programmeringsspråk att webbsidor utför åtgärder som att bestämma vem som försöker använda dem eller hämta resultat baserat på en sökning.
- De använder en databas Så vad är en databas, hur som helst? [MakeUseOf Explains] Så vad är en databas, hur som helst? [MakeUseOf Förklarar] För en programmerare eller en teknikentusiast är begreppet en databas något som verkligen kan tas för givet. Men för många människor är begreppet en databas i sig lite utländsk .... Läs mer för att lagra innehållet på sidorna, listor över användare / lösenord eller inmatningen från formulärinsändningar.
- De använder en webbserver Så här ställer du upp en Apache-webbserver i tre enkla steg Så här konfigurerar du en Apache-webbserver i tre enkla steg Oavsett orsaken kan du vid någon tidpunkt få en webbserver att gå. Oavsett om du vill ge dig fjärråtkomst till vissa sidor eller tjänster, vill du få ett samhälle ... Läs mer. Det kommer att köra sidfilerna (och deras programmering) och returnera den resulterande HTML-filen till besökarens webbläsare.
Vi tittar på var och en av dessa i tur och ordning nedan.
CMS programmeringsspråk
En av de viktigaste skillnaderna mellan olika CMS är det programmeringsspråk de stöder vilket programmeringsspråk som ska läras. Webbprogrammering Vilket programmeringsspråk som ska läras. Webbprogrammering Idag ska vi titta på de olika webbprogrammeringsspråken som driver Internet. Detta är den fjärde delen i en nybörjare programmeringsserie. I del 1 lärde vi oss grunden till ... Läs mer. Programmeringsspråk används för att göra webbplatsen "dynamisk", det vill säga exekverar beräkningar eller annan logik. Dessa operationer kan vara lika enkla som att visa det aktuella året i sidfotens upphovsrätt att lägga till och visa numeriska rapporter.
Det finns minst ett CMS för alla större webbprogrammeringsspråk, inklusive:
- PHP: WordPress, Drupal, Joomla
- ASP.NET: DotNetNuke (DNN CMS), Umbraco
- Python: Django, Plone
- Java: Alfresco, Magnolia
Av dessa språk (och andra), PHP Lär dig att bygga med PHP: En Crash Course Lär dig att bygga med PHP: En Crash Course PHP är det språk som Facebook och Wikipedia använder för att betala miljarder förfrågningar dagligen. de facto-språket som används för att lära ut webbläsning. Det är vackert enkelt, men briljant kraftfullt. Read More har kommit fram som frontrunner för att skapa content management-system av ett antal skäl. För det första är det öppen källkod, som inte kunde sägas om alla språk i början. Som ett resultat var det ett språk som ingår gratis i många av de billiga värdplanerna där mindre webbplatser bor. Dessutom är det med de flesta åtgärder ett enkelt språk för att börja med, så att nya användare kan hacka sin egen funktionalitet till sina webbplatser. Slutligen inkluderade Apache webbservern PHP som en modul från och med tidigt. Det var snabbt och enkelt att konfigurera världens ledande webbserver.
Medan vissa andra språk har gjort framsteg mot PHP: s ledning (.NET är nu öppen källkod En GNU Börja för Microsoft: Vad är en öppen källkod. NET Framework för resten av oss En GNU börjar för Microsoft: Vad är en Open Source. NET Framework Means För resten av oss Microsoft släppte precis en betydande del av sin kod under en tillåten öppen källkodslicens. Det här steget bryter med årets tradition. Men varför och vad betyder det för dig? Läs mer, till exempel), det blir lite tid tills de fångar betydande marknadsandelar från liknande som WordPress.
CMS databaser
Programmeringsspråket för ett givet CMS också faktorer i vilken databas (er) den stöder eller direkt kräver. PHP har utmärkt stöd för MySQL Ett steg för steg MySQL-handledning för självhäftande Wordpress Bloggers Ett steg för steg MySQL-handledning för självhäftande Wordpress Bloggers Om du är en bloggare är chansen att du använder WordPress. Det finns två sätt på vilka du kan använda WordPress, idealisk för dem med viss teknisk kunskap och de som saknar. Den första är att ... Läs mer, även om CMSes använder det ofta kan göras för att arbeta med PostgreSQL eller SQLite Learn SQL eller skapa en enkel databas med SQLite databasbläddrare Lär SQL eller skapa en enkel databas med SQLite databasbrowser Har du någonsin befann dig i behov av en databas, men du har verkligen inte råd med Microsoft Access, och du har verkligen inte råd att installera och driva en Oracle-server hemma. Oavsett om ditt mål är ... Läs mer också. På samma sätt stöder DNN CMS Microsoft SQL Server, medan Alfresco stöder företags- och Java-vänliga databaser som Oracle och db2. I slutet av dagen kan databasen du använder för ett CMS också drivas av vad som helst som din värdmiljö tillhandahåller. Ett webbhotell för din blogg kommer nästan säkert att göra MySQL tillgänglig för dig, medan ditt företag får använda något annat än Oracle.
En databas lagrar huvuddelen av innehållet för de flesta CMS, med undantag för programmets filer (sidmallar, tillägg, etc.), media (bilder och video) och vissa konfigurationer. Men texten på en given sida, liksom banorna till mediefiler och webbadressen där den bor, lagras ofta i DB-tabeller.
CMS webbserver
Slutligen är ett CMS en webbapplikation och kräver därför en webbserver. Genom användning av olika moduler kan Apache stödja alla fyra ovan nämnda språk och mer. Nyare webbservrar blir populära De bästa Linux-webbserverprogramvaran (& Apache-alternativ) Den bästa Linux-webbserverprogramvaran (& Apache-alternativ) Läs mer, till exempel nginx och lighttpd, stöder också olika uppsättningar av språk via tillägg.
Webbservern kommer att köra webbplatsens filer. Dessa filtyper (.PHP, .JSP och så vidare) är typiskt bara HTML-markup 17 Enkla HTML-kodsexempel Du kan lära dig om 10 minuter 17 Enkla HTML-kodsexempel Du kan lära dig om 10 minuter Om du känner till följande 17 HTML-taggar ( och de extra få som går med dem) kan du skapa en grundläggande webbsida från början eller tweak koden som skapats av en app som ... Läs mer med programmeringsspråkskod blandad in. Eftersom webbservern behandlar sidan, exekverar den vilken programmatisk kod den står över med hjälp av modulen / tillägget för det språket. När det är dags att bearbeta en sida kommer programmeringskoden att ersättas med något slags webbläsarvänligt innehåll.
Om du tittar noga ovan kan du se koden hjälper till att konstruera sidan genom att "hämta" sidhuvud och sidmall. För att göra saker mer komplicerade kan en fil ringa en eller flera andra filer för hjälp. Eftersom vi tittar på några faktiska förfrågningar till ett CMS i nedanstående avsnitt, tänk på att körning av en PHP-fil faktiskt kan innebära att många körs.
Ett CMS i aktion
Det enklaste sättet att beskriva ett CMS är att ta ett par provoperationer och gå igenom stegen för varje. Liksom bilden tidigare börjar dessa processer med en begäran om en sida och slutar med webbservern som skickar lite HTML (och CSS / Javascript) tillbaka till webbläsaren. Men det finns några steg mellan vilka vi kommer att undersöka nedan, med antagande av ett PHP-baserat CMS.
Begär en sida
Den mest grundläggande interaktionen med ett CMS är en vanlig användare som begär en av sina sidor. Ta till exempel den här artikeln 7 skäl att ditch ditt CMS och överväga en statisk webbplatsgenerator 7 skäl att ditch ditt CMS och överväga en Static Site Generator I många år var det svårt för många användare att publicera en webbplats. CMS som WordPress ändrade det, men de kan fortfarande vara förvirrande. Ett annat alternativ är en statisk webbplatsgenerator. Läs mer om MakeUseOf. Den har en URL, men det finns ingen faktisk fil sitter i en katalog på den platsen. När läsarens webbläsare begär en webbadress, kör webbservern ett av CMS: s PHP-filer, till exempel en index.php- fil.
PHP-sidan behandlar förfrågan genom att fråga databasen för CMS-sidan med den matchande URL-adressen i dess metadata (igen finns det ingen aktuell fil på webbadressens plats). Den läser sedan sidans innehåll (vanlig text och grafik samt widgets) och metadata (titel, vilken mall den använder etc.) från DB och returnera sidans HTML för att webbläsaren ska göra. Kort sagt använder den URL-adressen för att välja vilken sidpost i databasen som ska användas.
Loggar in
På samma sätt behöver en användare som vill logga in på webbplatsen (till exempel för att se en "medlemmars enda" sida. Så här skapar du en medlemskaps enda webbplats med Wordpress Så här skapar du en medlemskaps enda webbplats med Wordpress Read More) behöver att tillhandahålla legitimationsuppgifter. När de försöker besöka den aktuella sidan kommer DB att innehålla behörigheter som anger att sidan kräver en inloggning.
När du anger ett användarnamn och lösenord på en sida som login.php, kommer den att fråga databasen för lösenordet för det angivna användarnamnet, gör jämförelsen för att se till att de matchar, och skicka användaren tillbaka till sin begärda sida enligt vad som är tillämpligt.
Uppdatering av en sida
Uppdatering av en sida i ett CMS kräver generellt åtkomst till dess administrationsskärm, ändring av sidans innehåll och ombesparing / ompublicering av den. Till exempel innehåller WordPress sidan wp-admin / post.php . Det kontrolleras först för att se om användaren är inloggad, och i så fall om användaren är en administratör. Därefter kommer det att fråga databasen för innehållet som representerar den sida som användaren vill modifiera, fylla i redigeringskontroller som textområden och bildväljare.
Användaren kan interagera med dessa kontroller (t.ex. byta text eller ersätta headerbilder), klicka på "Spara" eller "Publicera" -knappen när du är klar. På denna punkt tar adminskärmen de nya inmatade värdena och uppdaterar dem i databasen.
CMSer gör Web Authoring Tillgänglig
Även internt är de komplexa applikationer, på ytan CMS som WordPress gör författande på webben lätt för icke-tekniska användare. Någon som vill lägga upp en enkel blogg kan registrera sig för ett billigt webbhotell, klicka på några knappar och få ett CMS redo att gå inom några minuter. Så här installerar du WordPress på en virtuell server gratis med Cloud9. Så här installerar du WordPress på en virtuell server gratis med Cloud9 Installera Wordpress i en virtuell miljö med Cloud9-serverutrymme. Ingen kodning krävs. Inget behov av att ladda ner programvara. Du kommer att tinkera med en WordPress-installation på bara några minuter. Läs mer . För ett par dollar mer kan värdbolaget även hantera uppdateringar och underhåll av det.
Är du värd för en webbplats eller blogg på ett visst CMS? Har du ett innehållshanteringssystem gör ditt jobb enklare? Eller skulle du föredra att bara ladda upp HTML till ditt värdkonto som om dagen? Låt oss veta i kommentarerna om du är en CMS-hängivare eller old-school HTML wrangler.