Klikněte na odkaz. Zobrazí se stránka. Ale pozorně se podívejte do adresního řádku.

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

Tato rozšíření nejsou náhodná. To jsou otisky prstů. Ukazují přesně, jak se server nachází za obrazovkou stránky, než se dostane do očí uživatele.

Většina uživatelů to ignoruje. Neměl bys. Pochopení těchto rozdílů může odhalit, jak síť skutečně funguje zevnitř. To vysvětluje, proč se některé stránky načítají rychle, zatímco jiné zamrzají. To vysvětluje slabá místa zabezpečení. To vysvětluje, proč vývojáři Microsoftu a Linuxu vedou po desetiletí tichou válku.

Tady je to, co ta písmena ve skutečnosti znamenají.

Rozdělit Htm vs Html

V počátcích World Wide Web vše běželo na UNIXu. UNIX miluje dlouhé názvy souborů. Líbilo se mu .html. Tohle byl standard. Statický. Jednoduchý.

Pak přišly PC. DOS. Windows.

Tyto systémy se řídí pravidly pro pojmenování 8.3. Název se skládá z 8 znaků. Pro příponu jsou přiděleny 3 znaky. .html má 4 znaky. Je toho moc. Systém se „dusil“.

Web se tedy přizpůsobil. Zbývají dvě přípony: .html a .htm.

V minulosti jste mohli odlišit servery UNIX od serverů Windows jednoduše podle jejich přípon souborů. Ty dny jsou pryč.

Dnes je tento rozdíl zanedbatelný. Stránky běžící na serverech UNIX mohou používat .htm. Servery Windows mohou poskytovat .html. Toto je čistě volba webmastera.

Například HowStuffWorks běží na UNIX a používá .htm. Proč? Protože webmaster to tak vybral. Obsah je statický. Soubor je na disku. Server to zachytí. Odešle váš prohlížeč tak, jak je. Žádné zpracování. Bez přemýšlení. Jen čtení.

Shtml: Preprocesor

.shtml je podobný .html, ale funguje jinak.

s znamená Server Side include (SSI).

Server nedělá nic pro běžné stránky .htm nebo .html. Načte soubor. Odešle to.

.shtml pozastaví server. Kontroluje soubory na speciální identifikátory. Našel jsem je. Splňuje je.

Představte si web, kde má každá stránka záhlaví a zápatí.

Pokud chcete změnit logo, musíte upravit každý statický soubor. Tisíce souborů.

Pomocí SSI uložte záhlaví do samostatného souboru. Stránka .shtml obsahuje značky podobné . Když uživatel požádá o stránku, server stránku načte, přidá kód záhlaví a pak odešle výsledek.

To usnadňuje aktualizaci celého webu. Upravte soubor záhlaví. Všechny stránky obsahující SSI budou okamžitě aktualizovány. To je jednoduchý trik. Vidíte však, že kromě ukládání dat server také funguje.

Asp: Flexibilní bestie od Microsoftu

.asp znamená Active Server Pages.

Toto je odpověď společnosti Microsoft na dynamický obsah. Běží na Windows serveru. To umožňuje vývojářům vkládat Visual Basic Scripting Edition (VBScript) nebo JScript přímo do HTML.

Server rozpozná .asp. Ví, že před odesláním čehokoli klientovi musí kód spustit.

Tento kód umí číst databázi. Můžete zkontrolovat své uživatelské jméno. Obsah můžete formátovat na základě přihlášeného uživatele. Získáte větší flexibilitu.

Ale to má svou cenu.

Ve vašem kódu je chyba. Pokud VBScript selže, stránka se zhroutí. Server vrátí chybu. Uživatelům se zobrazí nefunkční stránka. To se u statického HTML nikdy nestane. Statické soubory nelze „zničit“.

Se svobodou přichází zodpovědnost. Stránky ASP jsou výkonné. Jsou také křehké.

Php, Jsp, Perl: otevřené hovory

Microsoft není sám. Zbytek sítě si vytvořil vlastní nástroje.

.php je nejoblíbenější náhradou za ASP.

Dříve to bylo zkratkou pro „osobní domovskou stránku“. Nyní to znamená pouze PHP. Je to skriptovací jazyk navržený pro vložení do HTML. Běží primárně na linuxových serverech. Je to open source. Je to zdarma.

.jsp znamená JavaServer Pages. Toto je odpověď Javy na ASP. Vložený kód je Java. Běží na serveru kompatibilním s Java. Je těžký. Spouštění je pomalé. Ale je spolehlivý. Používají ho velké společnosti, kde je stabilita důležitější než rychlost.

„.pl“ znamená PERL.

PERL je starý skriptovací jazyk. Je známý svým zpracováním textu. Soubory .pl jsou obvykle skripty, které dynamicky vytvářejí stránky. Můžete dělat vše, co lze s ASP. Je to mocné. Je také známá tím, že se špatně čte. Syntaxe je těsná. Kód vypadá, jako by po klávesnici chodila kočka.

CGI: Divoké místo

.cgi znamená Common Gateway Interface.

Toto není jazyk. Toto je protokol.

Soubory .cgi lze vytvořit pomocí C++. Můžete také psát v PERLu. Můžete také psát v Pythonu. Mohou být vytvořeny pomocí téměř čehokoli, co lze zkompilovat nebo spustit na serveru.

Server detekuje požadavek .cgi. Spustí spustitelný soubor. Spustitelný soubor vygeneruje HTML. Server tento HTML odešle klientovi.

Na HowStuffWorks jsou některé soubory .cgi ve skutečnosti zkompilovaným kódem C++. Je to velmi rychlé. Obtížnost je vysoká.

Proč byste si tím měli dělat starosti?

Většině uživatelů je to jedno. Chtějí jen, aby se stránka načetla.

Pochopení těchto rozšíření vám však může pomoci porozumět architektuře internetu.

Statické stránky (.htm, .html ) jsou bezpečné. Jsou rychlé. Náklady na hosting jsou nízké.

Dynamické stránky (.asp, .php, .jsp, .cgi ) jsou velmi flexibilní. Spolupracují s databází. Přizpůsobte si obsah. Jsou zranitelné vůči injekčním útokům.

Pokud vidíte .shtml, víte, že váš web používá serverové nástroje. Může to být velký web s mnoha stránkami.

Pokud vidíte .php, víte, že stránka pravděpodobně běží na Linuxu. Může se jednat o software s otevřeným zdrojovým kódem.

Pokud se podíváte na .asp, uvidíte, že se pravděpodobně jedná o Microsoft Corporation.

Síť není monolitická. Je to mozaika technologií. Rozšíření je šev.

Až příště kliknete na odkaz, podívejte se na konec.

Co nám toto rozšíření říká o autě čekajícím na druhé straně?

Nic není zaručeno. Internet tyto hranice stírá. Linuxový server může obsluhovat .htm. Servery Windows mohou poskytovat .php.

Rozšíření nyní říkají méně o operačním systému. Hovoří o preferencích developera.

Tato technologie stále existuje. Pořád to má logiku.

Signál ale slábne. Snažíme se o dynamické doručení bez ohledu na název souboru. Tyto rozdíly se stávají historickými relikty.