zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > (X)HTML
Seite neu laden Gute URLs: mit oder ohne Slash am Ende

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 04.05.2009, 12:46
Benutzerbild von AndreasB
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 29.11.2005
Beiträge: 1.326
AndreasB wird schon bald berühmt werden
Standard Gute URLs: mit oder ohne Slash am Ende

Es geht um URLs zu Dokumenten, nicht zu Bildern etc.

Spricht aus Eurer Sicht etwas gegen

HTML-Code:
http://example.tld/foo
http://example.tld/foo/bar
statt

HTML-Code:
http://example.tld/foo/
http://example.tld/foo/bar/
Wikipedia, zum Beispiel, verwendet keinen Slash am Ende ihrer URLs.

Ich empfinde URLs ohne Slash am Ende als besser lesbar und auch schöner.

Einen potentiellen Konflikt durch die gleichzeitige Existenz von
HTML-Code:
http://example.tld/foo.php
und
HTML-Code:
http://example.tld/foo/index.php
kann ich ausschließen.

Falls die Variante ohne Slash am Ende den Server minimal mehr belastet, weil die Prüfung "länger" dauert: das würde mich nicht stören.
Schönheit ginge in diesem Fall vor Rechenzeit-Verbrauch.
__________________


Geändert von AndreasB (04.05.2009 um 17:01 Uhr)
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 04.05.2009, 13:05
Benutzerbild von Pablo
4 8 15 16 23 42
XHTMLforum-Kenner
 
Registriert seit: 31.05.2004
Beiträge: 1.773
Pablo sorgt für eine eindrucksvolle AtmosphärePablo sorgt für eine eindrucksvolle Atmosphäre
Standard

Ich mache es (wenn ich die Möglichkeit dazu habe) wie folgt:

http://example.com/foo/
http://example.com/foo/bar

Sprich: Die letzte Ebene ohne Slash, alle Ebenen davor mit Slash, da diese ja theoretisch Ordner sind in denen noch etwas drin steckt.
sollte foo kein Unterdokument bar besitzen, dann hätte ich example.com/foo gemacht.

Kleine Anmerkung am Rande: "Offizielle" Beispieldomains sind example.com/net/org, da diese wirklich existieren, aber nie Content haben werden.

Gruß,
Pablo
__________________
Go Opera!
… oder Chrome. Auch cool.
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 04.05.2009, 16:06
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.737
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Ich würde den abschließenden Schrägstrich weglassen. Damit wären typenspezifische URLs wie etwa „/foo/bar.html“ oder „/foo/bar.pdf“ gegenüber der typengenerischen URL „/foo/bar“ dennoch möglich. Einzige Ausnahme ist die Sprachidentifizierung, etwa „/de/“ statt nur „/de“ (aber dennoch „/de/foo/bar“). Siehe auch meinen Beitrag in URL-Darstellung.
__________________
Markus Wulftange
Mit Zitat antworten
  #4 (permalink)  
Alt 04.05.2009, 17:04
Benutzerbild von AndreasB
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 29.11.2005
Beiträge: 1.326
AndreasB wird schon bald berühmt werden
Standard

Zitat:
Zitat von Pablo Beitrag anzeigen
Ich mache es (wenn ich die Möglichkeit dazu habe) wie folgt:

http://example.com/foo/
http://example.com/foo/bar

Sprich: Die letzte Ebene ohne Slash, alle Ebenen davor mit Slash, da diese ja theoretisch Ordner sind in denen noch etwas drin steckt.
sollte foo kein Unterdokument bar besitzen, dann hätte ich example.com/foo gemacht.
Ein Lösung, wo ich den URL ändern müsste, wenn ein "Unterdokument" dazukäme, möchte ich nicht verwenden.
__________________

Mit Zitat antworten
  #5 (permalink)  
Alt 04.05.2009, 17:37
Benutzerbild von AndreasB
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 29.11.2005
Beiträge: 1.326
AndreasB wird schon bald berühmt werden
Standard

Zitat:
Zitat von Gumbo Beitrag anzeigen
Ich würde den abschließenden Schrägstrich weglassen. Damit wären typenspezifische URLs wie etwa „/foo/bar.html“ oder „/foo/bar.pdf“ gegenüber der typengenerischen URL „/foo/bar“ dennoch möglich.
Danke für den Kommentar. Mich interessiert in dem Zusammenhang auch Eure Praxis für die lokale Verzeichnisstruktur.

Die Verzeichnisstruktur

Code:
/8/
  /baby-biker/
    index.php
  /elektrofahrrad/
    index.php
  /gelesen/
    index.php
  /hohlspeiche/
    index.php
  /leserbriefe/
    index.php
  index.php
nimmt "sehr viel Höhe" im Dateimanager ein und ist damit unübersichtlich.

Als besser empfinde ich den "gezielten Umgang mit Ordnern". Nicht zuviele, nicht zu wenige.

In meinem (unverwirklichten) Ideal bildet die Verzeichnisstruktur auch die erwünschte Reihenfolge (Dateimanager, die ein manuelles freies Sortieren erlauben, sind mir nicht bekannt) der Artikel ab.

Könnte mein Editor sinnvoll mit Dateien ohne Dateiendung umgehen, würde ich selbstverständlich auch die Endungen eliminieren, welche die
Lesbarkeit mindern.

Code:
/8/
   01-editorial.php
   02-elektrofahrrad.php
   03-baby-biker.php
   aa-gelesen.php
   bb-leserbriefe.php
   bb-hohlspeiche.php
Die letzten drei Artikel sind übrigends wiederkehrende Rubriken. Daher muss ihre Sortierung unabhängig von der Anzahl der anderen Artikel sein.

Großer Nachteil der Methode mit Praefixen eine Sortierung zu erwingen:
Der Server müsste mit passenden Regeln in die Lage versetzt werden, dem "guten URL" (also ohne Praefix) die passende Datei zuzuordnen.
Alternativ müsste man vor dem Hochladen der Dateien automatisch alle Namen ändern lassen.
Für Programmierer wahrscheinlich Kleinigkeiten.

Mich interessiert Eure Praxis, Eure lokale Verzeichnisstruktur.
__________________


Geändert von AndreasB (04.05.2009 um 18:22 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 04.05.2009, 18:16
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.737
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Dank Rewrite-Techniken wie etwa Apaches mod_rewrite kannst du die URL ganz nach Belieben gestalten. So wäre beispielsweise auch nur „/editorial“, „/elektrofahrrad“ usw. möglich.
Und wenn du dann noch ein CMS einsetzt, ließe sich das Ganze auch relative bequem verwalten.

Ein ganz einfaches System wäre beispielsweise, das Dateiverzeichnis direkt als Vorlage zu nehmen. So könnte etwa „/foo“ entweder auf „/foo/index.php“ oder auf „/foo.php“ abgebildet, „/foo/bar“ entweder auf „/foo/bar/index.php“ oder auf „/foo/bar.php“ abgebildet werden (je nach gewünschter Reihenfolge und Existienz der Dateien), entweder direkt oder als Parameter für die „/index.php“:
Code:
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

RewriteCond $0/index.php .*
RewriteCond %{DOCUMENT_ROOT}$0/index.php -f [OR]
RewriteCond $0.php .*
RewriteCond %{DOCUMENT_ROOT}$0.php -f
RewriteRule ^[^/.]+(/[^/.]+)*$ %0 [L]
__________________
Markus Wulftange
Mit Zitat antworten
  #7 (permalink)  
Alt 04.05.2009, 18:29
Benutzerbild von AndreasB
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 29.11.2005
Beiträge: 1.326
AndreasB wird schon bald berühmt werden
Standard

@Markus (Gumbo)

Danke für die Beispiele mit "Mod Rewrite".

Was sind denn Deine eigenen Vorlieben für eine Verzeichnisstruktur?
__________________

Mit Zitat antworten
  #8 (permalink)  
Alt 04.05.2009, 18:39
Benutzerbild von Gumbo
XHTMLforum-Kenner
 
Registriert seit: 22.08.2004
Ort: Trier
Beiträge: 2.737
Gumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekanntGumbo ist jedem bekannt
Standard

Das ist eigentlich egal. Entscheide dich, was dir besser gefällt.

Die von mir genannte Variante hätte den Vorteil, dass beide parallel geführt werden könnten. Folgende Dateistruktur würde also funktionieren:
Code:
+------------------+----------+
|Dateisystem       | URL-Pfad |
+------------------+----------+
| /foo.php         | /foo     |
| /bar             |          |
| +- /index.php    | /bar     |
| +- /baz.php      | /bar/baz |
+------------------+----------+
Wenn allerdings parallel ein „/foo/index.php“ existierte, würde dieses vorgezogen.
Wenn du dich also entschließt, neben dem Index-Dokument noch weitere Dokumente zu führen, empfehle ich dir den Umstieg auf ebendiese „/foo/index.php“, um nicht so etwas zu bekommen:
Code:
+----------------+------------+
|Dateisystem     | URL-Pfad   |
+----------------+------------+
| /foo           |            |
|  +- /quux.php  | /foo/quux  |
| /foo.php       | /foo       |
| /bar           |            |
|  +- /index.php | /bar       |
|  +- /baz.php   | /bar/baz   |
+----------------+------------+
Das würde nur irritieren (zweimal „foo“, einmal „/foo“ und einmal „/foo.php“). Stattdessen:
Code:
+----------------+------------+
|Dateisystem     | URL-Pfad   |
+----------------+------------+
| /foo           |            |
|  +  /index.php | /foo       |
|  +- /quux.php  | /foo/quux  |
| /bar           |            |
|  +- /index.php | /bar       |
|  +- /baz.php   | /bar/baz   |
+----------------+------------+
Eine einebige Nur-„index.php“-Variante hingegen wäre auch nicht sinnvoll:
Code:
+----------------+------------+
|Dateisystem     | URL-Pfad   |
+----------------+------------+
| /foo           |            |
|  +- /index.php | /foo       |
| /bar           |            |
|  +- /index.php | /bar       |
+----------------+------------+
Stattdessen wäre folgendes vorzuziehen:
Code:
+----------------+------------+
|Dateisystem     | URL-Pfad   |
+----------------+------------+
| /foo.php       | /foo       |
| /bar.php       | /bar       |
+----------------+------------+
__________________
Markus Wulftange

Geändert von Gumbo (04.05.2009 um 18:51 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 06.05.2009, 10:32
Benutzerbild von AndreasB
Erfahrener Benutzer
XHTMLforum-Kenner
Thread-Ersteller
 
Registriert seit: 29.11.2005
Beiträge: 1.326
AndreasB wird schon bald berühmt werden
Standard

Zitat:
Zitat von Gumbo Beitrag anzeigen
[...]
[/code]Stattdessen wäre folgendes vorzuziehen:
Code:
+----------------+------------+
|Dateisystem     | URL-Pfad   |
+----------------+------------+
| /foo.php       | /foo       |
| /bar.php       | /bar       |
+----------------+------------+
Bei einem guten URL geht es IMHO auch um Persistenz. Also: hat er Bestand, auch wenn es typische Änderungen auf der Site gibt.

Eine typische Änderung:
Ein Artikel wird in mehrere Artikel aufgeteilt

Wenn man URLs mit Slash am Ende verwendet, muss nichts geändert werden.
Aus der ehemaligen Artikelseite wird eine Übersichtsseite.

Ein anderer Punkt, der für Slashes am Ende sprechen könnte:
Butchering

Also das händische Kürzen von URLs nach links, bis zum nächsten Slash.
Es sollte gewährleistet sein, dass jede URL die auf einen Slash endet, einen sinnvollen Inhalt ausgibt, typischerweise eine Übersicht oder eine Startseite für den Bereich, der durch den letzten Namensbestandteil gekennzeichnet wird.

Ich habe einige Gedanken zur lokalen Verzeichnisstruktur aufgeschrieben:
Verzeichnisstruktur und URLs

Über Eure Kommentare/ Gedanken dazu freue ich mich.
__________________

Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 06.05.2009, 11:18
Benutzerbild von inta
free as in freedom
XHTMLforum-Kenner
 
Registriert seit: 04.12.2006
Ort: Berlin
Beiträge: 5.025
inta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz seininta kann auf vieles stolz sein
Standard

Ich verstehe dein Problem nicht. Dass im Dateibrowser alphabetisch sortiert wird ist doch in Ordnung, warum sollte die Reihenfolge dort der in deiner Navigation entsprechen? Der User sieht deine Verzeichnisstruktur doch eh nicht und du kannst doch sicher zwischen URL und Verzeichnisstruktur trennen, oder nicht?

Zu der Verzeichnisstruktur an sich kann ich dir wenig sagen, da ich nicht mit statischen Dateien arbeite. Die Templates liegen bei mir alle in einem Verzeichnis, wenn es mal zu viele werden sollten, dann fasse ich sie nach Funktion in Verzeichnisse zusammen. Ich befürchte, das hilft dir nicht weiter?!

Ob du einen abschließenden Slash verwendest oder nicht, ist meiner Meinung nach genau die gleiche Problematik wie bei der Frage: www-Subdomain oder nicht? Ich würde, egal in welchem Fall, immer per 301 auf die vorhandene Variante weiterleiten.
Bisher habe ich immer einen abschließenden Slash verwendet (bei der blanken Domain wird auch immer einer angehängt, daher hatte ich das so übernommen), aber mittlerweile bin ich durch Gumbos Beiträge zu dem Thema von der Variante ohne abschließenden Slash überzeugt.
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mod_rewrite: Slash am Ende der URL DoktorW Serveradministration und serverseitige Scripte 0 01.05.2009 21:28
Problem mit Footer ans Ende kvn CSS 7 29.11.2007 23:23
Allgemeine Fragen zu freundlichen URLs Sodie Serveradministration und serverseitige Scripte 10 15.10.2007 21:16
Dirty Urls Midnight Serveradministration und serverseitige Scripte 4 09.06.2007 21:55
Druckversion: URLs von Links ausgeben AndreasB Barrierefreiheit 8 24.01.2007 13:42


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:43 Uhr.