Warum wird bei der URL nicht zwischen Groß- und Kleinschreibung unterschieden?
Ich verstehe, dass das wie eine provokative (und "Devil's Advocate") Art rhetorischer Frage aussehen mag, aber ich denke, es ist nützlich, darüber nachzudenken. Das Design von HTTP ist, dass ein "Client", den wir üblicherweise als "Webbrowser" bezeichnen, den "Webserver" nach Daten fragt.
Es gibt viele, viele verschiedene Webserver, die freigegeben werden. Microsoft hat IIS mit Windows Server-Betriebssystemen (und anderen, einschließlich Windows XP Professional) veröffentlicht. Unix hat Schwergewichte wie Nginx und Apache, ganz zu schweigen von kleineren Angeboten wie OpenBSDs internem httpd, thttpd oder lighttpd. Darüber hinaus verfügen viele netzwerkfähige Geräte über integrierte Webserver, mit denen das Gerät konfiguriert werden kann, einschließlich Geräten mit netzwerkspezifischen Zwecken wie Routern (einschließlich vieler Wi-Fi-Zugangspunkte und DSL-Modems) und anderen Geräten wie Druckern oder USVs (batteriegepufferte unterbrechungsfreie Stromversorgungen), die möglicherweise über eine Netzwerkverbindung verfügen.
Bei der Frage "Warum wird bei URLs zwischen Groß- und Kleinschreibung unterschieden?" Und die eigentliche Antwort lautet: Das machen nicht alle. Mindestens ein Webserver, der recht beliebt ist, unterscheidet in der Regel NICHT zwischen Groß- und Kleinschreibung. (Der Webserver ist IIS.)
Ein Hauptgrund für das unterschiedliche Verhalten zwischen verschiedenen Webservern liegt wahrscheinlich in der Einfachheit. Die einfache Möglichkeit, einen Webserver zu erstellen, besteht darin, die gleichen Schritte wie beim Auffinden von Dateien durch das Betriebssystem des Computers / Geräts auszuführen. Häufig suchen Webserver eine Datei, um eine Antwort bereitzustellen. Unix wurde für Computer der gehobenen Klasse entwickelt. Daher bot Unix die wünschenswerte Funktionalität, Groß- und Kleinbuchstaben zuzulassen. Unix hat entschieden, Groß- und Kleinschreibung als unterschiedlich zu behandeln, da sie sich unterscheiden. Das ist ganz einfach und natürlich. In Windows wurde die Groß- und Kleinschreibung nicht berücksichtigt, da bereits erstellte Software unterstützt werden soll. Dieser Verlauf geht auf DOS zurück, das Kleinbuchstaben einfach nicht unterstützt hat. möglicherweise in dem Bestreben, die Dinge mit weniger leistungsfähigen Computern zu vereinfachen, die weniger Speicher verbrauchen. Da diese Betriebssysteme unterschiedlich sind, weisen einfach gestaltete (frühe Versionen von) Webservern dieselben Unterschiede auf.
Vor diesem Hintergrund finden Sie hier einige spezifische Antworten auf die spezifischen Fragen:
Warum wurde bei der ersten Erstellung von URLs die Groß- und Kleinschreibung berücksichtigt?
Warum nicht? Wenn bei allen Standard-Webservern die Groß- und Kleinschreibung nicht berücksichtigt wird, bedeutet dies, dass die Webserver einem vom Standard festgelegten Regelsatz folgen. Es gab einfach keine Regel, die besagt, dass Groß- und Kleinschreibung ignoriert werden muss. Der Grund, warum es keine Regel gibt, ist einfach, dass es keinen Grund gab, eine solche Regel zu geben. Warum sich die Mühe machen, unnötige Regeln aufzustellen?
Ich frage dies, weil es mir (dh einem Laien) so vorkommt, als würde Groß- und Kleinschreibung vermieden, um unnötige Fehler zu vermeiden und eine bereits komplizierte Textfolge zu vereinfachen.
URLs wurden für die Verarbeitung durch Computer entwickelt. Obwohl eine Person eine vollständige URL in eine Adressleiste eingeben kann, war dies kein wesentlicher Bestandteil des beabsichtigten Designs. Das beabsichtigte Design ist, dass Leute Hyperlinks folgen ("klicken"). Wenn durchschnittliche Laien das tun, ist es ihnen wirklich egal, ob die unsichtbare URL einfach oder kompliziert ist.
Hat eine URL, bei der die Groß- und Kleinschreibung beachtet wird, auch einen echten Zweck / Vorteil (im Gegensatz zu den meisten URLs, die unabhängig von der Groß- und Kleinschreibung auf dieselbe Seite verweisen)?
Der fünfte nummerierte Punkt in der Antwort von William Hay erwähnt einen technischen Vorteil: URLs können eine effektive Möglichkeit für einen Webbrowser sein, Informationen an einen Webserver zu senden, und es können mehr Informationen eingefügt werden, wenn weniger Einschränkungen bestehen Einschränkung würde reduzieren, wie viele Informationen enthalten sein können.
In vielen Fällen ist die Unterscheidung zwischen Groß- und Kleinschreibung jedoch nicht sehr überzeugend. Dies wird durch die Tatsache belegt, dass sich IIS normalerweise nicht darum kümmert.
Zusammenfassend ist der überzeugendste Grund wahrscheinlich nur die Einfachheit für diejenigen, die die Webserver-Software entwickelt haben, insbesondere auf einer Plattform mit Groß- und Kleinschreibung wie Unix. (HTTP hat das ursprüngliche Design von Unix nicht beeinflusst, da Unix deutlich älter als HTTP ist.)