Wann sollte ein abschließender Schrägstrich in einer URL verwendet werden? Zum Beispiel - sollte meine URL wie folgt aussehen: /about-us/
oder wie /about-us
?
Ich bin mir der SEO-Probleme voll bewusst - doppelter Inhalt und das Kanonische; Ich versuche herauszufinden, welche ich im Zusammenhang mit der Bereitstellung von Seiten verwenden soll richtig allein.
Zum Beispiel denkt mein Kollege, dass ein abschließender Schrägstrich am Ende bedeutet, dass es sich um einen "Ordner" handelt - ein "Verzeichnis". Dies ist also kein korrekter Stil. Aber ich denke das ohne einen Schrägstrich am Ende - es ist auch nicht ganz richtig, weil es fast wie ein Ordner aussieht, aber es ist nicht und es ist auch keine normale Datei, sondern ein Dateiname ohne Erweiterung.
Gibt es eine richtige Methode, um zu wissen, welche Sie verwenden sollen?
Nach meiner persönlichen Meinung werden nachgestellte Schrägstriche missbraucht.
Grundsätzlich entstammte das URL-Format demselben UNIX-Format von Dateien und Ordnern, das später auf DOS-Systemen verwendet und schließlich für das Web angepasst wurde.
Eine typische URL für dieses Buch unter einem Unix-ähnlichen Betriebssystem ist ein Dateipfad wie file: ///home/username/RomeoAndJuliet.pdf, der das in einer Datei auf einer lokalen Festplatte gespeicherte elektronische Buch identifiziert.
Quelle: Wikipedia: Uniform Resource Identifier
Eine weitere gute Quelle zu lesen: Wikipedia: URI-Schema
Gemäß RFC 1738, in dem 1994 URLs definiert wurden, können Ressourcen, die Verweise auf andere Ressourcen enthalten, relative Links verwenden, um den Speicherort der zweiten Ressource so zu definieren, als ob sie "an derselben Stelle wie diese" stehen, mit Ausnahme des folgenden Verwandten Pfad". Weiter heißt es, dass solche relativen URLs von der ursprünglichen URL abhängen, die eine hierarchische Struktur enthält, auf der der relative Link basiert, und dass die FTP-, HTTP- und Datei-URL-Schemata Beispiele für einige sind, die als hierarchisch betrachtet werden können wobei die Komponenten der Hierarchie durch "/". getrennt sind
Quelle: Wikipedia Uniform Resource Locator (URL)
Ebenfalls:
Das ist die Frage, die wir oft hören. Weiter zu den Antworten! In der Vergangenheit ist es üblich, dass URLs mit einem abschließenden Schrägstrich ein Verzeichnis angeben und dass URLs ohne abschließenden Schrägstrich eine Datei bezeichnen:
http: //example.com/foo/ (mit abschließendem Schrägstrich, üblicherweise ein Verzeichnis)
http: //example.com/foo (ohne abschließenden Schrägstrich, normalerweise eine Datei)
Quelle: Google WebMaster Central Blog - Schrägstrich oder nicht
Endlich:
Ein Schrägstrich am Ende der URL lässt die Adresse "hübsch" aussehen.
Eine URL ohne Schrägstrich am Ende und ohne Erweiterung sieht etwas "komisch" aus.
Sie werden Ihre CSS-Datei niemals benennen (zum Beispiel) http: //www.sample.com/stylesheet/ oder?
ABER ich bin ein Befürworter von Best Practices im Internet, unabhängig von der Umgebung. Es kann wackelig und unklar sein, genau wie Sie über die URL ohne ext sagten.
Es ist keine Frage der Präferenz. /base
und /base/
haben unterschiedliche Semantik. In vielen Fällen ist der Unterschied unwichtig. Es ist jedoch wichtig, wenn relative URLs vorhanden sind.
child
relativ zu /base/
ist /base/child
.child
relativ zu /base
ist (vielleicht überraschend) /child
.Ich bin immer wieder überrascht von der umfangreichen Verwendung von abschließenden Schrägstrichen bei Nicht-Verzeichnis-URLs (unter anderem WordPress). Dies sollte wirklich keine Entweder-Oder-Debatte sein, da ein Schrägstrich nach einer Ressource semantisch falsch ist. Das Web wurde entwickelt, um adressierbare Ressourcen bereitzustellen, und diese Adressen - URLs - wurden entwickelt, um eine * nix-artige Dateisystemhierarchie zu emulieren. In diesem Zusammenhang:
Wenn Sie diese Richtlinien verwenden, ist es falsch, einen Schrägstrich hinter eine Nicht-Verzeichnis-Ressource zu setzen.
Das ist eigentlich keine Frage der Ästhetik, sondern ein technischer Unterschied. Das Verzeichnis, das darüber nachdenkt, ist völlig korrekt und erklärt so ziemlich alles. Lass es uns herausfinden:
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 /index.htm
An, es existiert und wird an den Client ausgeliefert. Später haben Sie viele - sagen wir mal - DVD-Filme und eine HTML-Seite für jeden von ihnen im /dvd/
- Verzeichnis. Nun fordert jemand /dvd/adams_apples.htm
An und es wird zugestellt, weil es da ist.
Irgendwann fordert jemand einfach /dvd/
- an, ein Verzeichnis , und der Server versucht herauszufinden, was zu liefern ist. Neben Zugriffsbeschränkungen und so weiter gibt es zwei Möglichkeiten: Zeigen Sie dem Benutzer den Verzeichnisinhalt an (ich wette, Sie haben dies bereits irgendwo gesehen) oder zeigen Sie eine Standarddatei an (in Apache ist es: DirectoryIndex: sets the file that Apache will serve if a directory is requested.
)
Soweit so gut, ist dies der erwartete Fall. Es zeigt bereits den Unterschied in der Handhabung.
(Das ist übrigens völlig verständlich.) Also haben Sie etwas völlig Falsches getan und anstatt /dvd/the_big_lebowski.htm
Hochzuladen, haben Sie diese Datei als dvd
(ohne Erweiterung) nach /
Hochgeladen. .
Jemand hat Ihre /dvd/
- Verzeichnisliste mit einem Lesezeichen versehen (natürlich wollten Sie diesen raffinierten index.htm
Nicht immer erstellen und aktualisieren) und besucht Ihre Website. Verzeichnisinhalt wird geliefert - alles in Ordnung.
Jemand hat von Ihrer Liste gehört und gibt /dvd
Ein. Und jetzt ist es geschraubt. Anstelle Ihres DVD-Verzeichnisses findet der Server eine Datei mit diesem Namen und liefert Ihre Big Lebowski-Datei.
Sie löschen diese Datei und weisen den Benutzer an, die Seite neu zu laden. Ihr Server sucht nach der Datei /dvd
, Diese ist jedoch nicht mehr vorhanden. Die meisten Server bemerken dann, dass es ein Verzeichnis mit diesem Namen gibt, und teilen dem Client mit, dass es sich tatsächlich um ein anderes Verzeichnis handelt. Die Antwort wird höchstwahrscheinlich sein:
Status Code:301 Moved Permanently
Mit Location: http://[...]/dvd/
Wenn Sie also völlig ignorieren, was Sie über Verzeichnisse oder Dateien denken , 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".
Nach Erhalt dieser Antwort lädt der Client /dvd/
Und alles ist in Ordnung.
Ist es in ordnung Nein.
Sie haben eine dynamische Seite, auf der alles an /index.php
Übergeben und verarbeitet wird. Bis jetzt hat alles ganz gut geklappt, aber das Ganze beginnt sich langsamer anzufühlen und Sie ermitteln.
Bald werden Sie feststellen, dass /dvd/list
Genau dasselbe tut: Umleiten zu /dvd/list/
, Das dann intern in index.php?controller=dvd&action=list
Übersetzt wird. Eine zusätzliche Bitte - aber noch schlimmer! customer/login
Leitet zu customer/login/
Weiter, das wiederum zur HTTPS-URL von customer/login/
Weiterleitet. 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
lädt einfach intern index.php?controller=dvd&action=list
.
Wenn es mit /
Endet, kann es niemals eine Datei sein. Keine Serverraten.
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
Lädt - oder das richtige Skriptmaterial lädt -, wenn Sie /dvd
Sagen: Es tut es, aber nicht, weil Sie die richtige Anfrage gestellt haben. Welches wäre /dvd/
Gewesen.
Den Schrägstrich weglassen, auch wenn Sie mit der Schrägstrich-Version tatsächlich eine zusätzliche HTTP-Anforderungsstrafe bedeuten. Was immer schlecht ist (denken Sie nach) der mobilen Latenz) und hat mehr Gewicht als eine "hübsche URL" - zumal Crawler nicht so dumm sind, wie SEOs glauben oder wollen, dass Sie glauben;)
Wenn Sie Ihre URL erstellen /about-us/
(mit dem abschließenden Schrägstrich), es ist einfach, mit einer einzelnen Datei zu beginnen index.html
und erweitern Sie es später und fügen Sie weitere Dateien hinzu (z. B. our-CEO-john-doe.jpg
) oder sogar eine Hierarchie darunter aufbauen (z. B. /about-us/company/
, /about-us/products/
usw.) nach Bedarf ohne Änderung der veröffentlichten URL. Dies gibt Ihnen eine große Flexibilität.
Andere Antworten hier scheinen das Weglassen des abschließenden Schrägstrichs zu befürworten. In einem Fall hilft ein abschließender Schrägstrich bei der Suchmaschinenoptimierung (SEO). Dies ist der Fall, wenn Ihr Dokument eine Dateierweiterung aufweist, die nicht .html
Lautet. Dies ist ein Problem bei Websites, die Websites bewerten. Sie könnten zwischen diesen beiden URLs wählen:
http://mysite.example.com/rated.example.com
http://mysite.example.com/rated.example.com/
In einem solchen Fall würde ich das wählen mit dem abschließenden Schrägstrich. Dies liegt daran, dass die Erweiterung .com
Eine Erweiterung für ausführbare Windows-Befehlsdateien ist. Suchmaschinen und Virenprüfer lehnen URLs ab, die möglicherweise Malware enthalten, die über solche Mechanismen verbreitet wird. Der abschließende Schrägstrich scheint alle Bedenken auszuräumen, sodass die Seite in Suchmaschinen rangiert und von Virenprüfern abgerufen werden kann.
Wenn Ihre URLs im Dateiteil kein .
Enthalten, würde ich der Einfachheit halber empfehlen, den abschließenden Schrägstrich wegzulassen.
Wer sagt, dass ein Dateiname eine Erweiterung benötigt? schau mal auf einer * nix maschine vorbei ...
Ich stimme Ihrem Freund zu, kein abschließender Schrägstrich.
Aus SEO-Sicht spielt es keine Rolle, ob am Ende einer URL ein abschließender Schrägstrich eingefügt werden soll oder nicht. Heutzutage ist es üblich, Beispiele für beides im Web zu sehen. Eine Website wird weder in irgendeiner Weise bestraft, noch beeinflusst diese Auswahl das Suchmaschinenranking Ihrer Website oder andere SEO-Überlegungen.
Wählen Sie einfach eine von Ihnen bevorzugte URL-Namenskonvention und fügen Sie ein kanonisches Meta-Tag in das <head>
Abschnitt jeder Webseite.
Suchmaschinen können eine einzelne Webseite als zwei separate doppelte URLs betrachten, wenn sie mit oder ohne den abschließenden Schrägstrich angetroffen wird, dh example.com/about-us/
und example.com/about-us
.
Es wird empfohlen, auf jeder Seite ein kanonisches Meta-Tag einzufügen, da Sie nicht steuern können, wie andere Websites auf Ihre URLs verweisen.
Das kanonische Tag sieht folgendermaßen aus: <link rel="canonical" href="https://example.com/about-us" />
. Durch die Verwendung eines kanonischen Metatags wird sichergestellt, dass Suchmaschinen jede Ihrer URLs nur einmal zählen, unabhängig davon, ob andere Websites einen abschließenden Schrägstrich enthalten, wenn sie auf Ihre Website verlinken.