2009-09-07 2 views
11

Weiß jemand, woher die "://" oder die "//" in den meisten URI-Syntaxen kommt? Zum Beispiel, warum ist es nicht geschrieben wie "http:www.example.com"?Ursprung von ": //" in vielen URI-Syntaxen

+2

SO URL-Verkürzungs Parser ist eine echte Nervensäge, wenn dies bitte wieder öffnet diese Frage einer :) – skaffman

+0

zu beantworten versucht, ist es sehr nützlich – n611x007

+0

[Was in einem nach dem Schema die Semantik des doppelten Schrägstrichs ist URI?] (Http://StackOverflow.com/q/8870227/1591669) – unor

Antwort

11

der a1kmm Antwort ist für bestimmte Anwendung URLs gut, aber wenn man in Bezug auf die semantische Ursprung des doppelten Schrägstrich neugierig sind, in diesem Artikel einen Blick:

http://www.w3.org/DesignIssues/Axioms.html

Es Es ist erwähnenswert, dass die Syntax mit dem doppelten Schrägstrich tatsächlich für die Verwendung mit einem dreifachen Schrägstrich erweitert werden kann, wenn man bei irgendein Niveau in einer viel komplizierter hierarchischen Struktur starten wollte. Zum Beispiel, annehmen, internationale Telefon Zahlen sollten erweitert werden, um in Zukunft einen Planetencode zu decken. Dann könnte der Planetencode an der Vorderseite des internationalen Codes angebracht werden. Der dreifache Schrägstrich könnte den interplanetaren Code einführen, und der doppelte Schrägstrich würde den internationalen Code einführen. Tatsächlich ist dies , wie der doppelte Schrägstrich kam zu sein: wenn hierarchische Namensgebung wie diese in Unix-Dateisystemen zu einem Netz Dateisystem erweitert wurde auf die Apollo-Domäne der zusätzliche Strich war eingeführt. In ähnlicher Weise verwendet Microsoft NT Netzwerk jetzt doppelten Backslash in genau der gleichen Weise.

+3

Eine Menge Internet "Syntax" basiert auf dem Apollo-Domain-System - zB das @ -Symbol in einer E-Mail-Adresse, die Tatsache, dass ein Hostname "small.medium.big" lautet, während der Unix-Pfad groß wird Ich denke, Berners-Lee spricht in seiner Autobiographie "Weaving the Web" darüber. Er erwähnt sogar, dass er darüber nachdachte, ob er vollständig unix-fähig wäre und dass er // com/stackoverflow/www/questions/1388194/origin-of- in-many-uri-syntaxe – Pod

+0

@Pod A: Also * warum * tat er nicht? (tldr: P) B: Irgendein Link auf was zum Teufel 'das Apollo-Domain-System' ist? :) Ich versuchte [dies] (https://en.wikipedia.org/wiki/Apollo/Domain) aber es enthält nicht das '@'. – n611x007

6

Die definitive Referenz auf URLs ist RFC1738, die 1994 Siehe im Dezember herauskommen http://www.ietf.org/rfc/rfc1738.txt

aus dem RFC zu zitieren:

URLs allgemein geschrieben werden als < scheme>: < Schema -spezifische-part>

und später sagt auf

Während die Syntax für den Rest der URL je nach ausgewähltem Schema variieren kann, verwenden URL-Schemata, die die direkte Verwendung eines IP-basierten Protokolls zu einem angegebenen Host im Internet verwenden eine gemeinsame Syntax für das Schema -spezifische Daten:
//<user>:<password>@<host>:<port>/<url-path> 
Einige oder alle Teile "< user>: < Kennwort> @", ": < Passwort>", ": < port>" und „/ < url -path> "kann ausgeschlossen werden. Die systemspezifischen Daten beginnen mit einem doppelten Schrägstrich "//", um anzuzeigen, dass sie der allgemeinen Internetschema-Syntax entspricht.
+2

Hmm, so stellt sich die Frage, warum benötigt diese "allgemeine Internetschemasyntax" einen doppelten Schrägstrich? (-: – hippietrail

Verwandte Themen