Klik op de link. De pagina verschijnt. Maar kijk goed naar de adresbalk.

.htm. .html. .shtml. .asp. .php. .cgi. .pl.

Deze extensies zijn niet willekeurig. Het zijn vingerafdrukken. Ze laten precies zien hoe de server achter het scherm de pagina heeft opgebouwd voordat deze ooit de ogen van de gebruiker bereikt.

De meeste gebruikers negeren dit. Dat zou je niet moeten doen. Als u deze verschillen begrijpt, kunt u onthullen hoe het netwerk achter de schermen echt werkt. Dit verklaart waarom sommige websites snel laden terwijl andere blijven hangen. Het verklaart beveiligingsproblemen. Dit verklaart waarom Microsoft- en Linux-ontwikkelaars al tientallen jaren een stille oorlog voeren.

Dit is wat deze letters eigenlijk betekenen.

De kloof tussen Htm en HTML

In de begindagen van het World Wide Web draaide alles op UNIX. UNIX houdt van lange bestandsnamen. Het hield van .html. Dit is de standaard. Statisch. Eenvoudig.

Toen kwam de pc. Dos. Ramen.

Deze systemen volgen de naamgevingsconventies van 8.3. De naam is 8 tekens lang. 3 voor de verlenging. .html is 4 tekens lang. Het is te lang. Het systeem verslikte zich.

Dus het web heeft zich aangepast. Er zijn nog twee extensies over: .html en .htm.

In het verleden kon je UNIX- en Windows-servers van elkaar onderscheiden door alleen maar naar hun bestandsextensies te kijken. Die dagen zijn voorbij.

Tegenwoordig is dit verschil onbeduidend. Sites die op UNIX-servers draaien, kunnen .htm gebruiken. Windows-servers kunnen .html leveren. Dit is puur de keuze van de Webmaster.

HowStuffWorks draait bijvoorbeeld op UNIX en gebruikt .htm. Waarom? Omdat de webmaster ervoor heeft gekozen. De inhoud is statisch. Het bestand staat op schijf. De server vangt het op. Stuur het zoals het is naar uw browser. Geen verwerking. Geen denken. Lees gewoon.

Shtml: preprocessor

.shtml is vergelijkbaar met .html maar werkt anders.

s staat voor Server Side Inclusief (SSI).

De server doet niets voor gewone .htm – of .html -pagina’s. Het haalt het bestand op. Het verzendt het.

.shtml schort de server op. Controleer bestanden op speciale identificatiegegevens. Het heeft ze gevonden. het voert ze uit.

Stel je een website voor met een kop- en voettekst op elke pagina.

Als u het logo wilt wijzigen, moet u elk statisch bestand bewerken. Duizenden bestanden.

Gebruik SSI om de header in een bestand op te slaan. De .shtml -pagina bevat tags die lijken op . Wanneer de gebruiker een pagina opvraagt, haalt de server de pagina op, voegt de headercode toe en vervolgens verzendt het resultaat.

Dit maakt het eenvoudiger om de hele site bij te werken. Bewerk het headerbestand. Alle pagina’s met SSI worden onmiddellijk bijgewerkt. Dit is een simpele truc. Je ziet echter dat naast de opslag ook de server werkt.

Asp: het flexibele beest van Microsoft

.asp staat voor Actieve Serverpagina’s.

Dit is het antwoord van Microsoft op dynamische inhoud. Werkt op een Windows-server. Hierdoor kunnen ontwikkelaars Visual Basic Scripting Edition (VBScript) of JScript rechtstreeks in HTML insluiten.

Server herkent .asp. Ik weet dat ik de code moet uitvoeren voordat ik iets naar de klant stuur.

Deze code kan de database lezen. U kunt uw gebruikersnaam controleren. U kunt de inhoud opmaken op basis van de ingelogde gebruiker. Je krijgt veel flexibiliteit.

Maar dit heeft een prijs.

Er zit een fout in uw code. Als het VBScript crasht, mislukt de pagina. De server heeft een fout geretourneerd. Gebruikers zien een kapotte pagina. Met statische HTML gebeurt dit nooit. Statische bestanden kunnen niet worden “vernietigd”.

Met vrijheid komt verantwoordelijkheid. ASP-pagina’s zijn krachtig. Het is ook kwetsbaar.

Php, Jsp, Perl: open source-uitdagers

Microsoft is niet de enige. De rest van het netwerk bouwde hun eigen tools.

.php is de meest populaire ASP-vervanger.

Vroeger was het een afkorting voor “persoonlijke homepage”. Vertegenwoordigt momenteel alleen PHP. Dit is een scripttaal die is ontworpen om in HTML te worden ingebed. Het werkt voornamelijk op Linux-servers. Het is open source. Het is gratis.

.jsp staat voor JavaServer Pages. Dit is het antwoord van Java op ASP. De insluitcode is Java. Werkt op een Java-compatibele server. Het is zwaar. Het opstarten gaat traag. Maar het staat vast. Het wordt gebruikt door grote bedrijven waar stabiliteit belangrijker is dan snelheid.

.pl staat voor PERL.

PERL is een oude scripttaal. Het staat bekend om zijn tekstverwerking. .pl -bestanden zijn doorgaans scripts die pagina’s dynamisch opbouwen. Met ASP kunt u alles doen wat u maar kunt. Het is krachtig. Het staat ook bekend als moeilijk leesbaar. De syntaxis is compact. De code ziet eruit als een kat die over het toetsenbord loopt.

Cgi: Wildcard

.cgi staat voor Common Gateway Interface.

Dit is geen taal. Het is een protocol.

.cgi -bestanden kunnen worden gemaakt met C++. Het is ook mogelijk om in PERL-formaat te schrijven. Het is ook mogelijk om het in Python te schrijven. Het kan worden gemaakt met vrijwel alles dat kan worden gecompileerd of op een server kan worden uitgevoerd.

De server heeft een .cgi -verzoek gedetecteerd. Voer het uitvoerbare bestand uit. Het uitvoerbare bestand genereert de HTML. De server stuurt deze HTML naar de client.

Op HowStuffWorks zijn sommige .cgi -bestanden feitelijk gecompileerde C++-code. Het is erg snel. De complexiteit is hoog.

Waarom zou je erom geven?

De meeste gebruikers maakt het niets uit. Ze willen gewoon dat de pagina wordt geladen.

Als u deze extensies begrijpt, kunt u echter de architectuur van internet beter begrijpen.

Statische pagina’s (.htm, .html ) zijn veilig. ze zijn snel. De hostingkosten zijn laag.

Dynamische pagina’s (.asp, .php, .jsp, .cgi ) zijn zeer flexibel. Deze communiceren met de database. Pas uw inhoud aan. Ze zijn kwetsbaar voor injectieaanvallen.

Als u .shtml ziet, weet u dat uw site gebruik maakt van server-side include. Het kan een grote website zijn met veel pagina’s.

Als je .php ziet, weet je dat de site mogelijk op Linux draait. Het kan open source-software zijn.

Als u naar .asp kijkt, ziet u dat dit waarschijnlijk de Microsoft-winkel is.

Het netwerk is geen monoliet. Het is een lappendeken van technologieën. De verlenging is een naad.

De volgende keer dat u op een link klikt, kijkt u naar het einde.

Wat vertelt deze extensie ons over de machine die aan de andere kant wacht?

Niets is zeker. Het internet vervaagt deze grenzen. Een Linux-server kan .htm serveren. Windows-servers kunnen .php leveren.

De extensies gaan nu minder over het besturingssysteem. Ze gaan over de voorkeur van de ontwikkelaar.

Die technologie bestaat nog steeds. Er is nog steeds logica.

Maar het signaal verdwijnt. Wij streven naar dynamische levering, ongeacht de bestandsnaam. Deze verschillen worden historische overblijfselen.