Annons

Internet är fantastiskt, jag tror att vi alla kan komma överens om det. Men har du någonsin satt dig ner och tänkt hur på jorden en webbplats faktiskt tar sig till din dator? Vilka tekniker ligger till exempel för MakeUseOf? Det är mycket mer än bara en enkel samling HTML-filer och bilder.

Läs vidare för att ta reda på exakt vad som går till att driva, värda och servera en webbplats för din konsumtion, kära läsare.

Hårdvara

Låt oss börja med den mest grundläggande komponenten i värd för en webbplats - hårdvaran. I själva verket är maskiner som används för att vara värd för en webbplats verkligen inte annorlunda än de stationära datorer du eller jag har hemma. De har mer minne, säkerhetskopior och ofta fiberoptiska nätverksanslutningar - men i princip är de samma. I själva verket kan alla gamla maskiner vara värd för en webbplats - det är bara ett fall av hur snabb den kommer att kunna skicka sidor till användare.

Du kan läsa mer här om olika typer av värd De olika formerna av webbhotell förklarade [Teknisk förklarad] Läs mer

instagram viewer
tillgängliga, från en enda maskin som delas mellan tusentals webbplatser som varje betalar $ 5 / månad, till en helt dedikerad server som kan köra något liknande MakeUseOf - vilket kostar tusentals dollar per månad.

teknik för webbplatsutveckling

Operativ system

De flesta webbservermaskiner har en optimerad smak av Linux - även om det finns ett stort antal servrar ute där som kör Windows, vanligtvis i företagsmiljöer där webbapplikationer är byggda på ASP eller dotNet. Från och med januari i år är den mest populära Linux-distro som valts för webbhotell Debianföljt noga av CentOS (baserat på RedHat), båda fritt tillgängliga för dig att ladda ner och prova själv - och var och en sade att vara värd för cirka 30% av alla webbplatser. Google kör naturligtvis sitt eget anpassade Linux såväl som sitt eget anpassade filsystem.

Webbserver programvara

Det är där saker verkligen börjar skilja sig. Webserverprogramvaran är applikationen som tar emot inkommande förfrågningar och serverar sidorna eller filerna. Webbserver-mjukvaran i sig är i stort sett oberoende av språket på webbsidan den visar - en Apache-server är ganska kapabel att servera Python, PHP, Ruby eller ett antal olika språk; men detta är inte universellt. Nuvarande marknadsandel indikerar att Apache har cirka 65% av de bästa webbplatserna, Microsoft IIS 15% och nginx 10%. nginx anses vara bättre på att hantera webbplatser med hög samtidighet - det vill säga där många tusentals användare kan vara på webbplatsen när som helst - och används i själva verket här på MakeUseOf.

teknik för webbplats

När du laddar upp en webbplats öppnar du ett uttag - en anslutning - mellan din dator och webbplatsservern. En detaljerad och långdans till HTTP-melodin börjar sedan med fram och tillbaka av förfrågningar, data och statuskoder. När du begärde den här sidan svarade vår server med en 200 - OK, mening "Visst, här har du"; om du besökte tidigare kanske din webbläsare också frågar "Hej, jag har en kopia av den här grafiken redan i min webbläsarcache, behöver jag den verkligen igen?", som vår server svarade på 304 - Ej ändrat, eller "Nej, det är coolt, vi har inte ändrat det eller något, bara använda det".

Ibland hittar du den fruktade 404 Ej Hittad, men jag behöver inte förklara den felkoden till dig. Om du någonsin har öppnat Pyroman Amatörens guide för att anpassa webbplatsdesign med FireBug Läs mer eller utvecklarläget för din webbläsare, kommer du att bli förvånad över att se hur mycket fram och tillbaka som händer - det är inte enkelt "Ge mig den sidan" - "OK, här", men faktiskt hundratals mindre interaktioner.

teknik för webbplats

Statiska filer och nätverk för leverans av innehåll

På alla webbplatser finns det några filer som knappast någonsin förändras. Saker som Javascripts, CSS, bilder, PDF-filer eller mp3-filer. Dessa kallas statiska filer, och för att tjäna dessa till dig måste webserverprogramvaran helt enkelt ta tag i filen och skicka den. Lätt, eller hur? Inte så snabbt.

Tyvärr är det mycket besvärligt att skicka ut ett stort antal statiska filer på grund av filernas storlek. Om du någonsin har besökt en webbsida där du faktiskt kan sitta där och titta på bilderna laddas, beror det på det webbservern hämtar filerna åt dig själv - de är helt enkelt inte optimerade för att göra den typen av arbete. Istället laddar stora webbplatser bort alla dessa statiska filer till det som kallas a Nätverk för innehållsleverans - separata servrar som är optimerade för att visa upp statiska filer löjligt snabbt med ett ögonblick.

De uppnår detta också genom att fysiskt hitta servrar på olika platser runt om i världen som speglar varandra, så att data har mindre långt avstånd att resa till dig. Just nu, även om MakeUseOf-artikeln du läser är värd i USA, kommer bilderna och Javascript alla från någonstans mycket närmare dig via en lokal CDN.

Dynamiskt innehåll - Språk för webbprogrammering

Nästan alla moderna webbplatser har dynamiskt innehåll av något slag, vare sig det innebär att WordPress lägger till kommentarer till ett blogginlägg, eller att Google visar upp sökresultat. För att göra en webbsida dynamisk, behövs webbprogrammeringsspråk. Jag skrev tidigare om olika språk tillgängliga för dig Vilket programmeringsspråk att lära sig - webbprogrammeringIdag ska vi ta en titt på de olika webbprogrammeringsspråken som driver Internet. Detta är den fjärde delen i en nybörjars programmeringsserie. I del 1 lärde vi oss det grundläggande för ... Läs mer (och fick in några hetta debatter för att föreslå att PHP var bäst). Vilket språk du än väljer, det fungerar i samband med webbserverns mjukvarulager för att först dynamiskt generera sidinnehållet och sedan servera det upp till dig.

databaser

Bakom alla dynamiska webbplatser finns databaser - massiva butiker för rå data som gör att vi kan komma åt den informationen på olika sätt. För detta krävs ett separat databasprogrammeringsspråk, det mest populära är SQL (Structured Query Language) och det är många varianter. Databaser innehåller olika datatabeller för att representera olika datastrukturer - en kan vara en lista med artiklar; en annan för kommentarer om dessa artiklar. Med SQL kan vi sortera, kombinera och presentera data på olika sätt.

I WordPress till exempel består ett 'inlägg' av åtminstone en titel och ett datum, och antagligen en del faktiskt innehåll. En separat tabell används för att lagra kommentarerna till den artikeln, med ytterligare en tabell för att lagra en lista med kategorier, och sedan ännu en att lagra en lista över vilka kategorier som har tilldelats vilken artikel. Genom att korsreferenser och dra data från alla dessa, samlar WordPress all den information den behöver för en viss sida på din blogg innan du tillämpar temat och presenterar det för dig via webbservern programvara.

teknik för webbplatsutveckling

Cachingsystem

Det är ganska enkelt att servera statiska HTML-filer när det gäller beräkning - servern måste bara hämta filen - dynamiskt innehåll å andra sidan kräver mycket arbete för att sätta samman sidan, med databasen och behandlingen som sker på det data. Ett cachesystem ger oss hela cirkeln genom att skapa dessa dynamiska sidor och sedan i princip spara dem som statiska HTML-filer. När exakt samma sida begärs igen behöver den inte beräknas igen, vilket påskyndar webbplatsen.

Caching är en bred term som kan betyda många saker men - CDN: er är en typ av cache; det finns också databascachar för ofta ställda frågor (tänk på WordPress som ber databasen om titeln på din blogg varje gång någon tittar på ditt inlägg - för det är faktiskt vad händer). Jag skrev tidigare om hur man ställer in den populära W3 Total Cache-system för WordPress Hur du konfigurerar de olika inställningarna för W3 Total Cache Plugin för din Wordpress-bloggFör ett tag sedan pratade jag om fördelarna med att installera W3TC-plugin på din Wordpress-blogg för att påskynda det med olika cachningar, men vissa läsare var förståsvis lite försiktiga med ... Läs mer , används också här på MakeUseOf. Din webbläsaren har också en cache Allt du behöver veta om webbläsarens cache [MakeUseOf Explains]När du har problem med en webbplats är ett av de första förslagen du kommer att höra från IT-support "försöka rensa webbläsarens cache" tillsammans med "och ta bort dina cookies". Så vad är ... Läs mer - Ganska mycket vad som helst kan cache.

Så som ni ser, det finns faktiskt en enorm mängd arbete och många tekniker involverade i värd för en webbplats. Men det är inte att säga att du inte kan ha dina egna blogg konfigureras och körs på mindre än en timme Ställ in din blogg med WordPress: The Ultimate GuideVill du starta din egen blogg men inte vet hur? Se till WordPress, den mest kraftfulla bloggplattformen som finns tillgänglig idag. Läs mer . Skalning till många tusentals användare är där problemen börjar.

Några frågor? Fråga bort, så gör jag mitt bästa för att svara. Bli du förvånad över hur mycket arbete som kan gå in på en webbplats?

James har en kandidatexamen i artificiell intelligens och är CompTIA A + och Network + certifierad. Han är ledande utvecklare av MakeUseOf och tillbringar sin fritid med att spela VR-paintball och brädspel. Han har byggt datorer sedan han var liten.