2009-06-29 4 views
6

No, aspetta. Sono assolutamente serio. Quando fu inventato HTTP, l'FTP esisteva già. Perché l'FTP non può essere il protocollo di trasporto del web?Perché il web ha bisogno di HTTP?

Certo, ha un sacco di feautres mancanti, ma la maggior parte sono stati aggiunti come un ripensamento per HTTP e potrebbero essere aggiunti anche a FTP, come la memorizzazione nella cache, compressione, hosting virtuale.

Si potrebbe pensare a un evento come un protocollo come CGI che ha consentito di generare automaticamente file FTP (pagine).

+2

Non dimenticare di gopher! –

+0

Esistono server FTP che ospitano contenuti dinamici. Così come si potrebbe "rotolare" il proprio. Ma la natura VERBO di HTTP rende questo lavoro molto più semplice. –

+0

HTTP non è un protocollo di trasporto, ricorda. È un protocollo di applicazione. TCP/IP è il protocollo di trasporto. – aehlke

risposta

24

Sì, è possibile pubblicare file HTML tramite FTP. Tuttavia FTP è un protocollo pesante, di stato, e presuppone che rimarrai sullo stesso server. È ottimizzato per il download di file di grandi dimensioni (in cui l'overhead di installazione viene ammortizzato in base alle dimensioni e al numero di download) HTTP è molto leggero (è possibile comunicare a un server HTTP tramite TELNET molto più facilmente di FTP, soprattutto prima di FTP PASSIVO) ed è progettato intorno all'HTML: il concetto che nel corso della tua navigazione visiterai molti server diversi e afferrerai solo un paio di file alla volta da ognuno di essi.

Gopher esisteva prima dell'HTML ed era molto popolare. Era anche un protocollo leggero. Semplicemente non aveva la presentazione e la facilità di entrata che l'HTML aveva.

La risposta breve è che le persone hanno inventato tutti i tipi di protocolli per tutti i tipi di motivi (ad esempio tesi di dottorato) - HTTP è riuscito a venire al momento giusto e avere il set giusto di funzionalità.

BTW, CGI non era nemmeno una parte di HTTP all'inizio. È arrivato più tardi - ed è stato molto più facile calzare CGI in HTTP che in FTP a causa del semplice protocollo stateless.

Oh, e non c'era "web" prima di HTTP/HTML. Il web ha bisogno di HTTP perché HTTP ha creato il web.

+2

Anche l'FTP non è adatto al firewall a causa della natura dell'utilizzo di un canale di controllo e di un canale dati. HTTP utilizza solo un singolo canale, rendendo molto più facile lavorare con. –

+0

+1 - Bella risposta - migliore della mia! Tuttavia, non sono del tutto d'accordo sul fatto che è stato "molto più facile" calzare CGI su HTTP piuttosto che FTP, soprattutto quando si dice che l'apolidia ha facilitato questo adattamento. La natura di stato del protocollo FTP era probabilmente la chiave per progettare un nuovo protocollo per il Web come era * originariamente * previsto (download di documenti semplice). Tuttavia, la mancanza di stato è stata una vera PITA per gli sviluppatori web da allora; siamo stati costretti a fare affidamento su soluzioni di gestione dello stato che non sarebbero state necessarie con un protocollo di stato. –

+1

Le prime applicazioni CGI hanno sfruttato (o almeno non hanno a cuore) la natura stateless di HTTP. Hanno solo reso le cose dinamiche o hanno elaborato i risultati dei moduli (Per divertimento, vai a guardare qui: ftp://ftp.ncsa.uiuc.edu/Web/httpd/Unix/ncsa_httpd/cgi/). Alla fine le persone volevano iniziare a fare applicazioni stateful su HTTP e poi è iniziata la vera festa delle scarpe. :) – Talljoe

2

http è un protocollo per il download di file con un formato visualizzabile (per definizione). FTP ottimizzato per scambio di file di tutti i tipi e il download di informazioni di directory.

Potrebbe avere una modifica orientata al display in FTP? Sì. Fornirebbe alcun vantaggio rispetto ad un protocollo più personalizzato con un'interfaccia più semplice? No.

4

Non c'è motivo per cui non si possa. Sarebbe stato ingombrante, appiccicoso e fastidioso però. Voglio dire, puoi fare una barca fuori da un corpo di bug VW. Non significa che sia una buona idea.

+1

Hmmm ... Off per trovare un VW Beatle e metterlo in fila attraverso il canale inglese. –

+0

Oppure, è possibile utilizzare una barca sollevata come tetto di bug VW: P – Darknight

1

Nel momento in cui il Web si stava riunendo, FTP stava già diventando ingombrante anche per il semplice scambio di file (ad esempio, cosa è stato progettato per fare). È un protocollo bizzarro e talvolta ambiguo che non funziona bene con i firewall. Le persone stavano già codificando soluzioni alternative nei client FTP per cercare di individuare il software server utilizzato dal sito FTP per risolvere i bug.

In breve, non è il tipo di cosa su cui basare una nuova tecnologia.