Warum brauchen Sie am Ende einer URL einen Schrägstrich?

7

Gibt es einen Unterschied zwischen diesen URLs in Bezug auf Schrägstriche am Ende der URL?

%Vor%

Behandeln Web-Frameworks und Webserver (z. B. Apache, Nginx, Django) diese Anforderungen anders?

    
Daniel Kivatinos 21.09.2009, 21:26
quelle

5 Antworten

5

In Django-URLs ohne Schrägstriche wird automatisch ein Schrägstrich angehängt. Dies ist eine Vorliebe der Django-Entwickler und keine hartkodierte Regel des Webs (ich denke, es ist eine Einstellung in Django).

    
Kai 21.09.2009, 21:28
quelle
24

Der Browser behandelt sie anders, wenn es um relative URLs geht. Eine Seite bei:

%Vor%

mit einem relativen Link wie:

%Vor%

löst diesen Link auf:

%Vor%

ersetzt path durch other . Während, wenn die Start-URL war:

%Vor%

dann wäre der aufgelöste Link:

%Vor%

Wenn path ein Verzeichnis und keine Datei ist, werden die meisten Webserver automatisch umgeleitet von:

%Vor%

zu:

%Vor%

weil das mit ziemlicher Sicherheit gemeint ist.

    
RichieHindle 21.09.2009 21:29
quelle
3

/ ist das Trennzeichen.

Aus dem RFC

  

Einige URL-Schemata (z. B. ftp, http und Dateischemas) enthalten      Namen, die als hierarchisch angesehen werden können; die Komponenten der      Hierarchie sind durch "/" getrennt

Wenn ein / am Ende steht, heißt das, dass in der URL möglicherweise mehr Daten vorhanden sind.

    
Ólafur Waage 21.09.2009 21:28
quelle
1

Sie werden als unterschiedliche Anforderungen behandelt, obwohl sie am Ende derselben Ressource / Handler / Routine entsprechen und auf die gleiche Weise verarbeitet werden.

Da der Ordner mit / einem Verzeichnis ähnlich sein soll, befinden sich alle relativen Links innerhalb des / ie previous / target / something ... während beim anderen die relativen Links auf dem gleichen Level liegen / etwas.

    
eglasius 21.09.2009 21:28
quelle
1

Nur eine Randnotiz, dass Suchmaschinen diese als 2 verschiedene Seiten anzeigen. So verletzt deine SEO.

    
corymathews 21.09.2009 21:38
quelle

Tags und Links