Das ist nicht wirklich eine Frage der Ästhetik, sondern ein technischer Unterschied. Das Verzeichnis, das daran denkt, ist völlig korrekt und erklärt so ziemlich alles. Lass es uns herausfinden:
Sie sind jetzt zurück in der Steinzeit oder bedienen nur statische Seiten
Sie haben eine feste Verzeichnisstruktur auf Ihrem Webserver und nur statische Dateien wie Bilder, HTML usw. - keine serverseitigen Skripte oder was auch immer.
Ein Browser fordert an /index.htm
, es existiert und wird an den Client geliefert. Später haben Sie viele - sagen wir - DVD-Filme überprüft und eine HTML-Seite für jeden von ihnen im /dvd/
Verzeichnis. Jetzt fragt jemand /dvd/adams_apples.htm
und es wird geliefert, weil es da ist.
Irgendwann fordert jemand nur noch an /dvd/
- das ist ein Verzeichnis, und der Server versucht herauszufinden, was zu liefern ist. Neben Zugangsbeschränkungen und so weiter gibt es zwei Möglichkeiten: Zeigen Sie dem Benutzer den Verzeichnisinhalt (Ich wette , Sie schon das irgendwo gesehen haben) oder eine Standarddatei zeigen (in Apache ist: DirectoryIndex: sets the file that Apache will serve if a directory is requested.
)
So weit so gut, das ist der erwartete Fall. Es zeigt bereits den Unterschied in der Handhabung, also lasst uns darauf eingehen:
Um 5:34 Uhr haben Sie beim Hochladen Ihrer Dateien einen Fehler gemacht
(Was übrigens völlig verständlich ist.) Sie haben also etwas völlig Falsches getan und statt hochzuladen, haben /dvd/the_big_lebowski.htm
Sie diese Datei als dvd
(ohne Erweiterung) hochgeladen /
.
Jemand hat Ihre /dvd/
Verzeichnisliste mit einem Lesezeichen versehen (natürlich wollten Sie diese raffinierte Liste nicht erstellen und immer aktualisierenindex.htm
) und besucht Ihre Website. Verzeichnisinhalte werden geliefert - alles in Ordnung.
Jemand hat von Ihrer Liste gehört und tippt /dvd
. Und jetzt ist es geschraubt. Anstelle Ihres DVD-Verzeichnisses findet der Server eine Datei mit diesem Namen und liefert Ihre Big Lebowski-Datei.
Also löschst du diese Datei und sagst dem Kerl, er solle die Seite neu laden. Ihr Server sucht nach der /dvd
Datei, aber sie ist weg. Die meisten Server werden dann feststellen, dass es ein Verzeichnis mit diesem Namen gibt, und dem Client mitteilen, dass das Gesuchte tatsächlich woanders ist. Die Antwort wird höchstwahrscheinlich sein:
Status Code:301 Moved Permanently
mit Location: http://[...]/dvd/
Also völlig ignorieren, was Sie Ihre Meinung zu Verzeichnissen oder Dateien , kann der Server nur mit solchen Dingen umgehen und entscheidet - sofern nicht anders angegeben - für Sie über die Bedeutung von "Schrägstrich oder nicht".
Nachdem diese Antwort empfangen wurde, wird der Client geladen /dvd/
und alles ist in Ordnung.
Ist es in Ordnung? Nein.
"Gut" ist nicht gut genug für dich
Sie haben eine dynamische Seite, auf der alles übergeben /index.php
und verarbeitet wird. Bis jetzt hat alles ganz gut funktioniert, aber das Ganze fühlt sich langsamer an und Sie untersuchen.
Bald werden Sie feststellen, dass /dvd/list
genau das Gleiche /dvd/list/
geschieht : Die Umleitung, in die dann intern übersetzt wird index.php?controller=dvd&action=list
. Eine zusätzliche Anfrage - aber noch schlimmer! customer/login
Weiterleitungen, zu customer/login/
denen wiederum zur HTTPS-URL von umgeleitet wird customer/login/
. Sie haben am Ende Tonnen unnötiger HTTP-Weiterleitungen (= zusätzliche Anforderungen), die die Benutzererfahrung verlangsamen.
Höchstwahrscheinlich haben Sie auch hier einen Standardverzeichnisindex: index.php?controller=dvd
ohne action
einfach internes Laden index.php?controller=dvd&action=list
.
Zusammenfassung:
Wenn es damit endet /
, kann es niemals eine Datei sein. Kein Server erraten.
Schrägstrich oder kein Schrägstrich sind völlig unterschiedliche Bedeutungen. Es gibt einen technischen / Ressourcenunterschied zwischen "Schrägstrich oder kein Schrägstrich", und Sie sollten sich dessen bewusst sein und ihn entsprechend verwenden. Nur weil der Server höchstwahrscheinlich /dvd/index.htm
das richtige Skriptmaterial lädt - oder lädt -, wenn Sie sagen /dvd
: Es tut es, aber nicht, weil Sie die richtige Anfrage gestellt haben. Welches wäre gewesen /dvd/
.
Wenn Sie den Schrägstrich weglassen, auch wenn Sie tatsächlich die Schrägstrichversion meinen, erhalten Sie eine zusätzliche Strafe für HTTP-Anforderungen. Was immer schlecht ist (denken Sie an die mobile Latenz) und mehr Gewicht hat als eine "hübsche URL" - zumal Crawler nicht so dumm sind, wie SEOs glauben oder wollen, dass Sie glauben;)