Weiterleitungen Technikwürze 87
Sascha Postner und Daniel Jagszent sprechen heute über Weiterleitungen. Welche Arten es gibt und warum man manche bevorzugen sollte. Außerdem gibt es einen kleinen Exkurs in HTTP-Statuscodes und die perfekte 404-Fehlerseite.
Transkript der Folge
-
Sascha Hallo Freunde der Webstandards, ihr habt wieder eingeschaltet bei eurem Design- und Webstandards-Podcast Technikwürze. Heute ist der 27. August 2007 und diese Ausgabe trägt die Nummer siebenundachtzig. Mein Name ist Sascha Postner und zusammen mit Daniel Jackzent habe ich euch heute eine Sendung zusammengestellt über Weiterleitungen und HTTP-Status-Codes. Entschuldigt bitte, dass meine Stimme ein bisschen eingeschränkt ist.
Das lag an der Love Parade, die an dem Wochenende in Essen stattgefunden hat, wo ich ja bekannterweise wohne und mir das Ganze auch mal angucken wollte. Ja, und irgendwie lässt man sich dann doch ein bisschen mitreißen, auch wenn eigentlich die Musik jetzt gar nicht zu dem gehört, was ich so normalerweise höre. Jetzt ganz andere Musik, die kennt ihr schon und danach geht's richtig los. Ja, herzlich willkommen zu dieser Ausgabe von Technikwürze.
Heute am Tag, nachdem ich, erste Mal auf, der Love Parade war. Ganz großartige Sache, muss ich sagen, obwohl ich eigentlich mit der Musik nichts zu tun habe. Aber wir haben ja noch jemanden hier, im virtuellen Skype-Studio, wie so oft bei mir der Daniel Jackzent. Hallo Daniel.
-
Daniel Hallo Sascha.
-
Sascha Hallo, du bist, -
-
Daniel Ich war nicht bei der Love Parade.
-
Sascha Nee, du warst nicht auf der Love Parade.
-
Daniel Ich komme aber direkt aus Schweden, auch von, von meinem Urlaub.
-
Sascha Genau. Also es ist quasi, exakt das Gegenteil. Du warst in der Natur und ich war, im Wahnsinn. Nein, es war wirklich sehr nett. Ich will da jetzt aber gar nicht viel drüber verlieren, viele Worte. Es war wirklich, sehr gut organisiert und hat sehr viel Spaß gemacht und na mal gucken, vielleicht nächstes Jahr wieder.
Jetzt kommen wir aber zu was ganz anderem, was auch in, was ja in einer gewissen Form auch Techno ist, aber in dem Fall geht es dann mehr um Technik und vor allen Dingen um Webtechnik. Und, in dieser Ausgabe soll es ja darum gehen, ein bisschen über, standardkonforme oder gute und schlechte Weiterleitungen, Adresse- und URL-Weiterleitungen.
Und ja, da werden wir ein bisschen drüber sprechen und auch noch mal als kleinen Exkurs über, die Fehlercodes, die HTTP-Fehlercodes, die man schon mal so sieht, für die meisten wahrscheinlich unter anderem, bekannt als großer vier null vier-Fehler, wenn man irgendwie eine Adresse aufruft und dahinter die Datei oder die Seite nicht vorhanden ist. Als Allererstes, würde ich jetzt mal über Weiterleitungen reden.
Weiterleitungen haben ja eigentlich immer den Zweck, das würde ich jetzt einfach mal behaupten, irgendwie eine Adresse, nicht mehr richtig ist, ja. Also man hat eine, eine Domain zum Beispiel, das ist ja, glaube ich, der, der bekannteste Fall und geht, will auf eine neue Domain umziehen. Man hat zum Beispiel vorher seinen Blog gehabt, auf einer Subdomain oder bei Blogger oder so.
Bei Blogger ist zum Beispiel, da hat man ja keinen Einfluss drauf, aber man hat zum Beispiel seinen, seinen Blog auf einer Subdomain gef-gef-geführt und möchte den jetzt auf eine eigene Domain umziehen. Dann kommt man ja normalerweise auf den, auf die Subdomain, drauf und da steht dann entweder so was drauf wie, : „Ja, leider ist hier nicht mehr das zu finden, was du suchst.
Klick doch mal hier hin, weil dann kommst du auf die neue Adresse.“ Oder aber es hat sich zum Beispiel auch die Struktur einer Seite verändert. Also zum Beispiel, hat man vorher, mit einem Content-Management-System oder mit einem Blog-System die, Adressen generiert. Das war dann immer irgendwas Domain Slash Index Punkt PHP und dann halt irgendwie ein Query String mit einer ID und jetzt hat man das, möchte man das umstellen und man stellt es um auf, zum Beispiel, sprechende URLs.
Weiß nicht, gibt's da einen Fachbegriff für? Kennst du den?
-
Daniel Nee, also sprechende URLs habe ich auch öfter mal gehört. Also können wir den mal als Fachbegriff führen.
-
Sascha Ja, also eben, dass dann da nicht steht ID vier oder so, sondern da steht dann halt zum Beispiel Kategorie Reiseberichte und dann kommt USA und dann kommt irgendwie Kalifornien. So und jetzt hat sich halt, wie gesagt, etwas verändert und man muss einfach von der einen, von der alten Adresse, die zum Beispiel noch in Suchmaschinen gelistet ist oder die Leute halt verlinkt haben, weiterleiten.
Und da gibt es halt unterschiedliche Ansätze und, meine Einteilung in Client- und serverseitige, Weiterleitungen sind jetzt hier gerade schon vom, vom DJ torpediert worden, dass es irgendwie viel zu unprofessionell beschrieben ist. Vielleicht erkläre ich ganz kurz einmal, welche ich damit gemeint habe und du, sagst, Daniel, warum, man das vielleicht nicht unbedingt, also die Einteilung in Client- und serverseitige Weiterleitung nicht ganz korrekt ist.
Ich hab, daran gedacht, also clientseitige, Weiterleitungen, da habe ich eigentlich nur zwei. Das ist einmal per JavaScript. Das heißt, ich habe ein JavaScript auf der Seite, das sagt: „Okay, spring zu folgender Seite.“ Und die andere wäre über einen, Meta-Tag, der einen Refresh ausführt mit einer gewissen Zeitverzögerung, die man einstellen kann und dann halt einfach eine neue Seite nachlädt.
Ich habe es deshalb clientseitig genannt im, Gegensatz zu, serverseitig, wo ich jetzt, zum einen die, Weiterleitung mit einer HT-Access-Datei drunter gefasst hätte, und zum anderen eben zum Beispiel mit PHP oder mit ASP, wo ich dann irgendwie den Header der Seite verändere. Weil ich da einfach keinen-- bei der clientseitigen, Weiterleitung habe ich halt in Anführungsstrichen Einfluss drauf als der Besucher der Seite.
Also ich kann zum Beispiel mein JavaScript deaktiviert haben oder diesen Meta-Refresh ausschalten. Das hab ich ja bei einer PHP-Weiterleitung oder HTXS-Weiterleitung tendenziell ähnlich. Aber du hast gesagt, dass das trotzdem eigentlich 'ne unkorrekte Bezeichnung ist. Warum?
-
Daniel Ja genau, das, eigentlich könnte man die, die beiden, Unterscheidungen anders benennen und dann wäre das, würde es auch wieder passen. Also könntest du zum Beispiel diese JavaScript und die Meta-Refresh, Weiterleitung könntest du einfach, Weiterleitungen, die im, im Content enthalten sind, nennen und, diese an HTXS-Weiterleitung oder die, also die per PHP oder ASPX gemachte, das sind einfach Weiterleitungen per Header. Und dann würde, würde das korrekt sein.
-
Sascha Okay. Nichtsdestotrotz ist aber, in jedem Fall gegeben, dass ich die mal grob in böse und gute Weiterleitungen einteilen würde und die, die halt im Content der Seite passieren. Also wie gesagt, mir fallen da auch eigentlich nur die JavaScript-Weiterleitung und der Meta-Refresh ein. Das sind dann eben die bösen. Unter anderem eben deshalb, weil man sie halt beein-beeinflussen kann oder eben sie nicht funktionieren müssen zwangsläufig.
Was bei den anderen beiden, die also ich PHP steht jetzt mal immer für Programmiersprachen. Also wie gesagt, das geht mit ASP mit Sicherheit auch. Da habe ich zwar jetzt keine Ahnung von, aber, bei, bei PHP-basierter Weiterleitung eben zum Beispiel oder der HTXS-Weiterleitung eben nicht kann. Das heißt, man hat nicht-- Also es gibt mehrere Vor- und Nachteile, die wir gleich noch mal ein bisschen, werden wir noch ein bisschen näher beleuchten.
Ja, ich würde vorschlagen, dass wir kurz erst mal auf diese, Content-Weiterleitung eingehen und dann, weil der eigentliche Hauptteil soll ja das Gute sein natürlich. Also da werden wir dann eben über die guten Weiterleitungen reden.
-
Daniel Ja, lässt sich natürlich aber auch noch drüber streiten, was eine gute Weiterleitung ist und in welchem Sinne man, also für was die jetzt gut sein soll und für was sie jetzt schlecht sein soll. Also für die Suchmaschinenoptimierung oder so was ist dann vielleicht eine Weiterlei-eine Weiterleitung gut, die aber normalerweise nicht bereit oder so.
-
Sascha Ja, das stimmt. Also da habe ich auch ein paar, Szenarien mir hier rausgesucht, wo man was wie einsetzen kann. Aber bleiben wir wie gesagt erst mal bei denen, die, zweifelsohne eher schlecht sind und eigentlich immer eigentlich nur eine Notlösung sein können und sollten. Und das ist eben, die Weiterleitung per JavaScript oder eben, per Meta-Refresh. Also zum einen, das haben wir jetzt schon ein paar Mal gesagt, die werden nicht immer unterstützt, können abgeschaltet sein.
Heißt, wenn man schon darauf angewiesen ist, eine solche Weiterleitung zu nutzen, dann sollte man in jedem Fall auf der Seite selber noch irgendwie so einen berüh-diesen berühmten Text haben, wie: „Wenn du nicht weitergeleitet wirst, dann klick doch hier, um zu der neuen Seite oder zu der richtigen Adresse zu kommen.“, das ist vor allen Dingen auch deshalb wichtig, weil, Suchmaschinen, Spider in der Regel diese Sachen eben nicht nutzen können.
Also das heißt, wenn Google auf die Seite kommt und, da passiert gar nichts und da steht nicht drauf, „geh doch mal hier weiter", dann ist für Google da Ende. Und, deshalb sollte man zumindest, draufschreiben: „Bitte klick doch hier.“ Zumal auch dem einen oder anderen, Besucher das so gehen wird und daher einfach aus Gründen der Zugänglichkeit das schon sinnvoll ist.
-
Daniel Ja, das stimmt. Aus, aus Gründen der Zugänglichkeit auf jeden Fall und die Suchmaschinen eigentlich auch, aber ich denke, so eine schlaue Suchmaschine wie Google wird das mittlerweile sogar auch, einfache JavaScript-Weiterleitungen erkennen und, und verfügen.
-
Sascha Ja, allerdings habe ich auch gelesen, weiß ich, das ist jetzt wieder was, wo ich nicht genau weiß, wie viel da dran ist. Es würde für mich aber auch durchaus Sinn machen, dass, das nicht gut ankommt, gerade zum Beispiel bei Google nicht, denn, diese Techniken werden sehr gerne von, von Suchmaschinenspammern benutzt. Liegt einfach daran, dass, man schön für den eigen-für eigentlichen menschlichen Besucher, der JavaScript zum Beispiel aktiviert hat, Seiten verstecken kann.
Also man, man, so 'ne Art Landing Page, die halt vollgeballert ist mit Suchbegriffen, die nicht unbedingt mit der eigentlichen Seite zu tun haben, die dann bei Google gut gelistet wird, die aber vom Designaspekt und vom Inhalt her total schlecht ist, aber einfach zum Beispiel eine hohe Suchma-Suchtreffer-, Suchworttreffer-Dichte hat. Die wird dann einfach, mit einem, mit einer kleinseitigen Weiterleitung für den normalen menschlichen Besucher übersprungen.
-
Daniel Ja, stimmt.
-
Sascha Ist klar, was ich meine.
-
Daniel Und, ein, ein-
-
Sascha Also dementsprechend hatte ich jetzt gelesen, dass, die Spider das teilweise ein bisschen bestrafen.
-
Daniel Ja, das stimmt. Und, auch warum sie es auch bestrafen, ist, zum Beispiel diesem bei Meta-Refresh oder auch bei, bei JavaScript-Refreshen, die, die halt schlecht gemacht sind. Da, da werden, wird ja der Zurück-Button, eigentlich, also kaputt gemacht. Also man kann dann nicht mehr zurückgehen, weil man sofort wieder weitergeleitet wird auf die, auf die folgende, auf die, auf die folgende Folgeseite. Deswegen-
-
Sascha Wobei ich da auch, da gibt es auch welche, die das, unterstützen.
-
Daniel Ja, also Meta-Refresh muss dann halt, muss man einfach, nicht mit null Sekunden halt weiterleiten, sondern irgendwie mit null Komma fünf Sekunden oder mit einer Sekunde weiterleiten. Oder per JavaScript gibt's, gibt's da einen, JavaScript-Befehl, der dann die aktuelle Seite in der History ersetzt und nicht, eine, eine neue Seite in der History erzeugt.
-
Sascha Ja. Ja, zumal ich aber auch festgestellt habe, deshalb, ich hatte jetzt gerade dieses Problem, deshalb habe ich mich damit auch wieder ein bisschen auseinandergesetzt. Also dass auch beim Meta-Refresh zum Beispiel mit null, man die Seite trotzdem kurz sieht. Also ja, es ist halt einfach wirklich, es sind Notlösungen. Ich wüsste ernsthaft kein, kein Einsatzgebiet, wo man das Ding si-- wo man sinnvoll ein- Das nutzen kann oder das halt irgendwie die bessere Alternative ist.
-
Daniel Also ich, ich würde, würde das, Meta Refresh zum Beispiel jetzt nicht, vollkommen abschreiben. Also das find, find ich ganz praktisch, um halt, wenn man wirklich dem Benutzer dann auch noch, visuell ein Feedback geben möchte: „Du hast grade die falsche URL angegeben“, dann, dann kann, dann ist das eine ganz gute Sache.
Dann kann man ihm einfach eine Seite anzeigen, die wird fünf Sekunden angezeichnet und dann wird automatisch auf die neue Seite um, umgeleitet und dann hat er, bekommt der Benutzer fünf Sekunden lang die Meldung hier: „Okay, du bist auf der falschen Seite, du bist auf der alten Seite. Bitte, bitte merk dir doch mal die neue URL.“
-
Sascha Okay, das stimmt. Ja, wenn man also-- Ja, okay. Ja doch, das, ja, ich glaube, das wär eine Sache, der da, ja, da kann man drüber nachdenken. Wobei, und da habe ich einen sehr schönen Artikel, von der,, sagen wir gleich, vom Web, Worldwide Web Consortium gefunden mit dem, schönen Titel, Cool URE. Wie wird-- UREs, wie wär denn das ausgesprochen? URIs? Keine Ahnung.
-
Daniel Mh, weiß ich auch nicht.
-
Sascha Ja, also ich übersetz das einfach mal, dann ist es nämlich einfacher: Coole Adressen ändern sich nicht, ne. Das fand ich einen sehr, sehr netten, Artikel.
Da geht's ein bisschen darum, mit, also geht's um Ausreden, warum Leute sagen: „Ja, aber irgendwie mussten wir jetzt unsere Struktur neu, überarbeiten und ja, es hat sich-- wir nutzen ein neues Content-Management-System und so weiter und so fort.“ Und es wird alles so 'n bisschen entkräftet, auch auf 'nem sehr, auf 'ner sehr sympathischen Ebene, wo dann nämlich dann schon mal kommt, wenn einer sagt: „Ja, aber es ist so viel Arbeit.“ Und dann sagt der Autor: „Gut, das ist 'n Punkt, das versteh ich.“ Ne.
Das ist halt genauso. Und, deshalb könnte man ja auch den Ansatz fahren, anstatt dann so eine Seite dazwischen zu schalten, die, a-alten Adressen einfach nicht kaputtgehen zu lassen. Also an, ne, dass man weiter dann im Prinzip so 'ne, so 'n, die Adressen bleiben halt einfach korrekt. Dafür ist dann zum Beispiel so ein htaccess oder eben, da, da kann man ja mit, mit dem, Modul Rewrite ganz gut arbeiten. Wär halt 'ne, 'ne gute Möglichkeit.
Aber okay, es ge-- Lassen wir mal dahingestellt, es gibt bestimmt Spezialfälle, wo dieser Meta Refresh auch noch Sinn machen kann. Aber gut, dann haben wir jetzt diesen Teil abgehakt. Kommen wir jetzt zu dem, was man jetzt, was die Standard-, Weiterleitung angeht, doch eher empfehlen würde. Die Weiterleitungen, die eher, über den Header laufen, wie du die Charakt-Charakterisierung so schön genannt hast. Und, benennen wir das mal eben mit htaccess und PHP.
Man möge uns verzeihen, dass wir schon wieder auf PHP, ei-eingehen, aber es gibt auch noch ganz viele andere schöne Programmiersprachen, aber das ist halt in dem Fall auch das, was ich ein bisschen kann. Ja, und da läuft das Ganze halt, darüber, dass man eben den Header manipuliert.
Du hattest das vorhin so, ich hab den, den, den technischen Aspekt nicht ganz verstanden, aber ich vermute, es läuft so: Ich krieg, ich frage halt eine, eine Adresse halt zum Beispiel an, der, das Skript oder eben die htaccess-Datei sagt: „, okay, das, was da passiert, läuft nicht ganz korrekt. Ich geb einen Fehlercode zurück.“, und in dem Fall von der Weiterleitung halt sage ich ihm dann auch, wo dann im Prinzip die wirkliche Seite zu finden ist, also was er dann als Nächstes aufrufen soll.
Ist das korrekt?
-
Daniel Genau, ja. Und dann, dann behandelt der Browser das, bevor er überhaupt diese Seite anzeigt. Also er, er bekommt ja von dem Webserver dann die, die, die Nachricht zurück, guckt auf diesen, Fehlercode oder einen Statuscode. Eigentlich ist es ja der Statuscode. Und, erkennt halt an diesem Statuscode: Okay, das ist jetzt grade nicht, nicht eine Seite, die ich anzeigen soll, sondern das ist eine Weiterleitung.
Und, dann, da steht dann auch noch in einem anderen Header, dem, dem Location-Header dann, wohin er dann weiterleiten soll und dann macht er einen neuen, neuen HTTP-Request auf diese Location und hoffentlich ist das dann ein, eine valide Adresse, die er dann anzeigen kann.
-
Sascha Ja, dann machen wir an der Stelle doch mal eben – das ist nämlich eigentlich 'n wichtiges Basiswissen dann für, für diese Sache – eben einen kleinen Exkurs zu diesen Statuscodes. Hatte ich am Anfang schon mal kurz angedeutet, der bekannteste, leider der bekannteste ist mit Sicherheit der vier null vier Code, also der, der einem sagt: „So hier, da ist nicht das, was du haben willst. Es ist nicht da und ich wei-, ich kann auch nichts dran ändern. Das ist einfach so.
Die Seite existiert nicht oder die, die Datei existiert nicht.“, es gibt aber noch viele andere und, den, den einen oder anderen kennt man vielleicht. Und zwar ist es so, ich hab da mal nachgeschlagen: Es gibt im Groben fünf Blöcke, die jeweils mit 'ner anderen Zahl vorne anfangen. Das fängt bei Hunderternummern an, wobei ich, wenn ich das richtig recherchiert habe, da es derzeit nur einen gibt und der auch nicht wirklich verwendet wird.
-
Daniel Ich, ich wüsste da gar keinen eigentlich.
-
Sascha Da geht's dann darum-
-
Daniel Red mal weiter.
-
Sascha Ja, es gibt wohl, 'n hundereins, der, heißt ich, mach grad 'n Protokollwechsel. Wie gesagt, wird aber wohl scheinbar nicht verwendet. Also man kann sich ungefähr vorstellen, wofür der wohl mal sein soll, aber keine Ahnung. Na ja, und dann kommt, die zweihundert, der zweihunderter Block. Der ist ein ganz netter Block. Der sagt nämlich: „It läuft.“ Ja, also im Prinzip gibt's, glaube ich, jedes Mal 'n zweihunderter, wenn ich einfach 'ne Seite aufrufe und ich die angezeigt bekomme.
-
Daniel Genau, ja. Also zweihundert oder zweihundertsechs ist, glaube ich dann, wenn, wenn das Pa-Partial Content ist, also wenn das dann- Wenn, wenn ich jetzt 'ne dreihundert Megabyte runterlade, dann ist mein Browser ja so, so schlau, dass er dann die stückweise runterlädt oder ein schlauer Browser macht das. Dann bekommt man halt diese zweihundertsechs Statusmeldung.
-
Sascha Ja genau, und da gibt's dann noch 'n paar andere. Also es geht, glaube ich, von zweihundert bis zweihundertsechs alles durch. So Sachen wie, Created ist zum Beispiel zweihunderteins. Das heißt, ein Objekt ist, wurde durch den Request auf dem Server angelegt. So und so, so. Man kommt mit diesen Servermeldungen eigentlich oder mit diesen Statusmeldungen nicht wirklich in Kontakt, außer eben, es ist oft was nicht so gut. Und, das ist dann der vierhunderter Block.
Aber jetzt kommen wir erst mal zu dem Block, der für die Weiterleitung total wichtig ist. Das ist nämlich der dreihunderter Block. Das heißt immer irgendwie so was wie, ja, irgendwas, irgendwas ist mit der Adresse nicht ganz korrekt. Und, da sind für uns vor allen Dingen, zwei Sachen interessant, nämlich der dreihunderteins und der dreihundertzwei, Statuscode.
Und der dreihunderteinser sagt: „Das, was du hier, die Adresse, die du oder die Seite“, sagen wir, sprechen wir immer von Seiten, „die Seite, die du hier aufrufen willst, die ist, temporär, nee, Quatsch, eben nicht. Die ist, permanent nicht mehr unter dieser Adresse erreichbar, sondern unter einer anderen Adresse.“ Und die dreihundertzwei ist das Gleiche, nur dass es temporär ist.
Also man sagt im Prinzip: „Hier, diese Adresse ist zwar im Moment nicht mehr dieselbe, aber, das ist kein Dauerzustand.“ Ganz ehrlich, ich habe absolut keine Ahnung, wofür das gut sein soll. Passiert das?
-
Daniel Also, ja doch, klar. Das, das gibt auch, Unterschiede dann in dem Browser. Also, je nachdem, welche, welche von diesen, Weiterleitungen du machst, das, hat das dann im Browser einen anderen Effekt. Es ist nämlich die dreihunderteins, dass das dann permanent weitergeleitet wird, dann zeigt der Browser wirklich auch diese neue URL in, in der Adresszeile an. Und wenn das nur temporär weitergeleitet wird, dann zeigt der Browser diese URL in der Adresszeile gar nicht an.
Er fragt, er fragt dann den Inhalt von dieser neuen URL ab, aber, die wird nicht in der Adresszeile angezeigt.
-
Sascha Das, würde ich jetzt mal kritisch hinterfragen. Also ist das wirklich-- Ganz ernsthaft, das wäre krass. Nee, also weil ich, ich, -- Bist du dir sicher?
-
Daniel Müsste ich jetzt noch mal ausprobieren, das,
-
Sascha Also weil jetzt-
-
Daniel Aus rein sicherheitstechnischen Gründen wäre das ziemlich blöd, aber, so hatte ich das in Erinnerung eigentlich, ja.
-
Sascha Also weil ich schon öfter nach so einer Funktion gesucht habe im Prinzip und das irgendwie, nie hinbekommen habe und da, wie wir dann gleich noch hören werden, der drei null, zwei der, Standard ist. Also das heißt, wenn man nichts explizit angibt, nimmt er einfach ein drei null zwei, was ich extrem blöd finde, aber egal. Deshalb muss man da eben handgreiflich werden und selber Hand anlegen, wäre das ja ständig so.
-
Daniel Okay, dann, werden wir das in den Shownotes berichtigen, wenn das falsch ist.
-
Sascha Okay, nee, aber, gut. Bleiben wir noch mal ganz kurz. Eben schließen wir vor allen Dingen diesen, diese Statusgeschichte noch mal ab. Zu der Weiterleitung kommen wir ja gleich noch mal, damit es jetzt hier querläuft. Also auf jeden Fall sind die dreihunderter Blöcke, hat irgendwas mit, immer was mit zu tun. Irgendwie ist das mit der, irgendwas ist mit der Adresse nicht in Ordnung. Die sind halt die, die für die Weiterleitung von Interesse sind. Dann kommen vierhunderter Fehler.
Die habe ich, das wird, du wirst du jetzt mich auch noch mal wahrscheinlich korrigieren, die habe ich in einer, in der Aufstellung, die ich ja jetzt hier als Basisliteratur mir durchgelesen habe, wurden die so als Client-Fehler bezeichnet. Also da gehört zum Beispiel, dazu, ja, hier irgendwie ist die Adresse nicht, kann nicht, also die Datei kann nicht gefunden werden, die du hier anfragst, oder, ja, die Übertragungsmethode, die du benutzt, ist nicht erlaubt.
Das ist zum Beispiel vierhundertfünf. Ja, das sind, wie gesagt, da sind die als Client-Fehler zusammengefasst worden. Ja?
-
Daniel Ja, das stimmt auch, weil dann, weil dann die Fehlerursache dann am Client zu suchen ist. Also da hat der Client die falsche URL angegeben oder hat der Client halt eine falsche Methode angegeben, also einen Head Request oder, oder einen Put Request angegeben bei einer URL, die, die nicht erlaubt ist für Put Requests.
-
Sascha Ja, und dann kommt der, fünfhunderter Block, der dem einen oder anderen vielleicht bekannt ist, wenn er mal irgendwie ein Skript versucht hat zu installieren oder, ja, also gerade wenn man mit CGI-Skripten arbeitet, begegnen einem da die Fünfhunderter doch mal. Das sind dann nämlich Serverfehler. Also zum Beispiel, Internal Server Error oder ja, ja, das fällt mir eigentlich so ein. Fünfhunderter ist ein Internal Server Error, nicht näher spezifiziert. Was gibt es da noch?
Fünf null drei sehe ich gerade hier. Service unavailable. Der Server kann die Anfrage wegen Überlastung nicht bearbeiten und solche Sachen. Das sind halt diese Server, Fehler. Ich packe da in die Shownotes auch noch mal einen Link, der die Tabelle mit drin hat, die ich jetzt hier gerade auf dem Bildschirm habe.
Das sind auf jeden Fall diese Fehlermeldungen und ich möchte an dieser Stelle den Exkurs noch mal ganz kurz erweitern und euch darauf hinweisen, dass es echt super ist, wenn man eine schöne vier null vier Seite macht. Da gibt es einen sehr schönen Artikel von A List Apart, The Perfect Four O Four. Der ist sogar schon von 2004.
Den werde ich auch noch mal verlinken, der sehr schön beschreibt, wie denn so eine, Seite aussehen sollte, könnte, müsste, damit sie halt, Webstandardansprüchen irgendwie genügt. Unter anderem die Tatsache, wenn du halt-- Eigentlich selbstverständliche Sachen. Wenn man halt, eine Suche auf der Seite hat, dann packt man die halt da auch mit rein. Man zeigt nicht mit dem Finger auf jemand.
Ich finde das immer so geil, wenn dann da steht – das habe ich auch schon so geschrieben, bevor jetzt irgendwer in die Comments schreibt, „deine Seiten sind auch nicht besser“ – aber, so von wegen: „Ja, du hast ja hier eine total bescheuerte Adresse eingegeben. Das ist ja echt falsch. Du bist ja so doof.“
-
Daniel Ist doch ein vier null vier. Das sind Client-Fehler. Das hat, hat der Client was falsch gemacht.
-
Sascha Ja, aber zum Beispiel ist es super geil und das steht auch mit in dem Artikel drin. Da bin ich noch nie so richtig drauf gekommen, dass es ja total gut ist, wenn da steht: „Oder die, die, die verdammte Seite, die auf diese Seite hier gelinkt hat, ist falsch“ und dann ist es am besten eine eigene. Das ist halt ein interner Link und der ist dann falsch. So, aber schön noch mal, so du, du Böse.
Und das könnte man zum Beispiel, das ist sehr schön auf der Seite, beschrieben, wie man dann mit,, unterschiedlichen Programmieransätzen solche Sachen auch abfängt, ne. Er hat da zum Beispiel hier mit reingeschrieben:, wenn du, wenn du selber der, der Auslöser für das Problem bist, Problem bist, könnte man halt so was Schönes reinschreiben wie: „Hey, der Fehler lag jetzt tatsächlich bei uns.
Sorry, das ist halt blöd gelaufen." Und, was man auch schön reinmachen kann, ist eben 'ne,, Reportfunktion, die einen einfach darauf hinweist, so wo ist das hergekommen? Wo ist das Problem? Vor allen Dingen, wenn es auf der eigenen Seite ist.
Na, auf jeden Fall, wie gesagt, ein sehr schöner Artikel unter dem, Begriff der Zugänglichkeit und Barrierefreiheit und vor allen Dingen auch der Webstandards, finde ich, sollte man da mal dran arbeiten und eigene vier null vier Seiten oder Fehlerseiten generell, implementieren.
-
Daniel Das ist auf jeden Fall, ja, auf jeden Fall ein Usability-Vorteil, als irgendwie, wenn da nur steht vier null vier File not found. Da kann ja-
-
Sascha Ja, Standards.
-
Daniel -der meisten Menschen nichts mit anfangen. Ja.
-
Sascha Ja, genau. Ja, so, jetzt müssen wir mal-- Es ist so ein bisschen wie beim Programmieren. Das war jetzt auch noch mal ein kleiner Exkurs. Also wir müssen die zweite geschweifte Klammer jetzt schon zumachen, um diese Funktion, diesen Exkurs. Kurz zurück eben zum ursprünglichen Thema, nämlich den Weiterleitungen.
Wir sind stehen geblieben bei den Header-Weiterleitungen und hatten den Exkurs zu den Fehlercodes eben deshalb gemacht, weil in diesen Header-Weiterleitungen eben tatsächlich, ein solcher dreihunderter Fehler übermittelt wird. Und wie schon gesagt, die zwei, die da für uns von Interesse sind, ist drei null eins und drei null zwei. Drei null eins eben temporär.
-
Daniel Andersrum, oder?
-
Sascha Und drei null zwei-- Bitte?
-
Daniel Drei null eins war permanent und drei null zwei temporär, glaube ich.
-
Sascha Ach ja. Shit. Das sind wahrscheinlich fünfzehn Mal gleich falsch gesagt. Ja, also drei null eins ist permanent und drei null zwei ist, temporär. So, und das Böse an der Sache ist, wenn man das nicht explizit macht, also nicht explizit sagt, wir hätten hier gerne ein, drei null eins dann benutzt, wird automatisch der drei null zwei benutzt, eben dieser, dieser temporäre. Das-- Ich bin mir relativ sicher, dass es da keinen Unterschied in der Adresszeile gibt, wie du gerade gesagt hast, aber.
-
Daniel Ja, ja gut, gut, aber was, was dann einen Unterschied geben wird wahrscheinlich ist,, bei den Suchmaschinen, wenn wir wieder auf die zurückkommen- -dass dann die Suchmaschinen, wenn das ein drei null eins Fehler ist, dann diese alte Seite da auch wirklich aus der, aus ihrem Index löschen und-
-
Sascha Ganz genau.
-
Daniel -die neue Seite indizieren.
-
Sascha Genau, und das hat, zwei, oder, oder diese Problematik birgt, Probleme mit sich, in zweierlei Hinsicht, sowohl für einen selber, der jetzt 'ne neue Seite mit, mit einer neuen Domain hat, neue Struktur oder sonst was, als auch für kriminelle Machenschaften. Ja, war mir vorher auch nicht klar, habe ich auch jetzt bei der Recherche für diese Sendung erst rausgefunden. Erst mal dieses, das Problem für einen selber.
Und zwar gehen wir mal davon aus, jeder von uns hat ja auf seiner Seite einen monstermäßig fetten Google-PageRank. Ja, klar.
-
Daniel Sicher, klar. Also PageRank acht muss man schon haben.
-
Sascha Ja, mindestens, mindestens. Ich mache das jetzt nur mal am PageRank fest. Also müsst jetzt nicht aufstöhnen. PageRank wäre ja gar nicht mehr so wichtig oder so, aber damit, daran kann man ungefähr die Problematik erklären. Wenn ich jetzt, sagen wir mal, ich habe eine PageRank-Sechs-Seite und ich, will jetzt auf eine neue Domain umziehen und die neue Domain ist halt noch gar nicht gepagerankt. Ist halt irgendwie noch bei null. So, und ich mache das jetzt mit so einer, temporären Weiterleitung.
Dann heißt das für Google: Okay, die Seite, die da auf der anderen, URL sitzt, die ist nur temporär an dieser Stelle. Das wird irgendwann mal wieder in den Ursprungszustand zurückversetzt und, wird halt diese neue Domain einfach nicht fett listen mit PageRank, weil diese PageRank-Sechs-Seite das sozusagen überstrahlt. Google sagt dann: „Ja, das ist ja alles super und das ist ja hier schon total gut gelistet", und der holt sich halt die Inhalte, die sind halt zwar jetzt temporär mal da.
Ich sa-- Die einzige Sache, die mir gerade einfällt, wo das Sinn machen könnte, ist, wenn ich zum Beispiel einen zu kleinen Server habe oder so und, Inhalte ausgelagert habe, aber auch das würde mir keinen Sinn machen.
-
Daniel Ja klar, dann würde ich, würde ich einfach die-
-
Sascha Diese temporäre Geschichte ist für mich völlig sinnfrei. Ich verstehe das nicht.
-
Daniel Ja, ich, überlege gerade auch ein Beispiel. Also das könnte sein, dass, dass du halt in, in Suchmaschinen andere URL, URLs haben möchtest, als, als du eigentlich benutzt, also als du eigentlich benutzt, weil du zum Beispiel, die, Session-ID mit in der URL mitführst und die von der Suchmaschine nicht be-berücksichtigt werden soll.
-
Sascha Hm.
-
Daniel Aber na ja, im Grunde-
-
Sascha Hm.
-
Daniel -fällt mir da auch kein gutes Beispiel ein.
-
Sascha Das bringt uns aber tatsächlich auch gleich zu dem, zu dem, zu dem Punkt, nämlich der, der kriminellen Machenschaften. Und zwar gibt es eben, URL-Hijacking. Ja, und zwar, passiert da das bewusst. Man macht sich im Prinzip Inhalte anderer Seiten, zunutze. Das heißt, für Google sieht das dann so aus, als wenn der Inhalt zu der Seite gehört, wenn ich diese temporäre Weiterleitung benutzt habe.
Wenn ich also zum Beispiel 'ne, 'ne hochoptimierte, Seite geschraubt habe, aber der Inhalt einfach nicht da ist, dann kann ich halt mit so einer temporären Umleitung dafür sorgen, dass die Inhalte, die von einer anderen-- Also ich leite einfach auf die andere um und für Google sieht das so aus, als wenn die Teil meiner Seite wären.
-
Daniel Okay, verstehe ich nicht so ganz. Also wird dann, aber dann, dann bringt mir das ja nichts, weil ich dann ja, weil dann meine tolle Seite, wo ich ja wahrscheinlich dann tolle Werbung oder was weiß ich auch immer installiert habe, gar nicht angezeigt wird bei dem Client oder wird der, wird ja weitergeleitet.
-
Sascha Ja, aber, es einfach aus Indexierungs-- Also, das, das machst du dann natürlich nicht dauerhaft. Also das machst du jetzt, einfach, um, zum Beispiel eben guten Content zu haben.
-
Daniel Ah, ach so, okay.
-
Sascha Also, das, das ist im Prinzip, ja, Suchwortdichte oder so absaugen. Verstehst du? Also das machst du jetzt nicht, um, um einfach, dem, ja, die, die Benutzer weiterzuleiten, sondern das machst du, soweit ich es verstanden habe, dafür, um halt, von, von Google noch besser, akzeptiert zu werden, in Anführungsstrichen. Also, damit Google halt sagt: „Wahnsinns tolle Inhalte, die die da haben.“ So, das ist eine super Seite.
Und dann sagst du irgendwann, wenn du dann auf Page Rank acht hochgekommen bist, so: „Tschüss, dann mache ich doch jetzt mal wieder meine Werbeseite.“ So, verstehst du?
-
Daniel Okay, ja.
-
Sascha Ja. Ja, also wie gesagt, wichtig ist für euch, dass ihr, wenn ihr das, wenn, wenn ihr solche Weiterleitungen machen wollt, eben die tat-tatsächlich den Header-Fehler, also in, in dem Header den Fehler oder den Statuscode auf drei null eins setzt, weil damit, sagt man dann halt: „Hier, das ist ein Permanentzustand, dass sich diese Adresse verändert und vergiss mal diese alte.“ Weil sonst wird das Ding immer weiter fett gelistet bleiben und die neue, eure neue Adresse möglicherweise gar nicht.
So bis, bis man das dann Ding, das Ding dann halt abschaltet. Ja, und, das, sind eigentlich die Weiterleitungen, die man da, die man da nutzen sollte. Und ich würde halt noch mal jedem ans Herz legen, dieses, diesen Artikel, vom, World Wide Web Consortium.
Cool URIs, cool URIs don't change, denn das ist auch ein kleiner Appell an, an das Nutzen von Mod Rewrite, mit dem man ja, bei ich glaube jedem besseren Content-Management-System und unter anderem auch bei WordPress und so die, URLs schöner machen kann, eben ohne dass da irgendwie Index ID fünfzehn Language DE oder so steht, sondern da steht dann halt, ich glaube, Technikwürze ist das doch auch, oder?
-
Daniel Ja, genau. Technikwürze das auch. Mit WordPress gibt es auch die einfachen WordPress erstellt ja diese HTX-Datei ja schon automatisch eigentlich.
-
Sascha Genau. Und wenn ich da, jetzt zum Beispiel bei Technikwürze auf die Technikwürze sechsundachtzig klicke, dann steht da oben Podcast Slash Technikwürze sechsundachtzig und nicht Index Posting vierhunderttausend.
-
Daniel Vierhunderttausend? Das ist eine Menge.
-
Sascha Okay, da steht ja nicht Posting hundertzwanzig oder so was. Und, genau das ist im Prinzip, Appell dieser Artikel cool URIs don't change, eben genau das so zu machen. Das heißt, wenn ich hinterher meine Seiten anpasse und die gut indexierten, die gut indexierten Artikel und Seiten in, in eine andere Struktur parke, dann wäre es eigentlich ideal, wenn man hingeht und es so hinbekommt, dass man trotzdem über die alten Adressen das Ganze immer noch aufrufen kann.
Und dafür kann man dann halt auch schön mit diesen, mit diesen Statuscodes und den Weiterleitungen arbeiten. Wir werden in die, ja.
-
Daniel Du merkst, dass ich was sagen will. Sehr gut.. Was sagt denn der Artikel darüber, wenn, wenn ich jetzt wirklich in, in meiner, in meiner Infrastruktur etwas verändere?
Also wenn ich jetzt zum Beispiel wie bei Technikwürze jetzt, Video-Podcasts anfange und, dann so eine zweite Kategorie habe, Audio-Podcasts und Video-Podcasts und also nicht mehr, nicht mehr nur Podcasts, und das gerne auch in der URL-Struktur widerspiegeln möchte, dass ich also dann Audio-Podcast, Slash eins habe oder dann Video-Podcast Slash eins für den Audio-Podcast einen, für den Video-Podcast Podcast. Das kann ich ja irgendwie nicht antizipieren vorher.
Wie, wie, warum sagt der Artikel, dass cool URIs not change?
-
Sascha Gut, der Artikel ist lang. Ich, der ist es. Ich meine, es ist natürlich klar, dass es schon sinnvolle Sachen gibt, aber ich würde jetzt zum Beispiel sagen, dass es dann... Also der Artikel ist auch mehr, was heißt mehr? Der Artikel ist halt ein Appell daran, dass man in so einem Fall, ohne den jetzt auswendig gelernt zu haben, aber ich glei-- ich denke, das würde so in die Richtung gehen.
Ja, dann hast du halt zum Beispiel unter, Kategorie Slash Podcast eine, eine neue Landing Page, wo halt steht so: „Hey, du suchst, ne, du kommst hierhin und hast diese Adresse eingegeben. Wir haben jetzt hier zwei Kategorien. Also willst du Audio-Podcast oder Video-Podcast?“ So. Und nicht einfach nur dann eine vier null vier Fehlerkommen.
-
Daniel Ah, okay, ja. Mhm.
-
Sascha Das ist zum Beispiel eben so ein Punkt. Also darum, darum geht es. Und er hat hier auch ganz nette Beispiele aus 2004 wohl, die ich riesig finde. Das eine ist, Hall of Flame hat er übrigens genannt. Finde ich total gut. Ja genau. Das eine ist, von 99, wo er, von der, von der amerikanischen Schulbehörde in seinem Land wohl irgendwie, da gibt es eine Seite, wo bei Sturmwarnungen, eine Liste ist, welche Schulen geschlossen sind. Und er hat sich die halt gebookmarkt.
Die war zu finden unter www.whdh.com Slash Stormforce Slash Closing, Closings Punkt SHTML. Er hatte sich gebookmarkt, ist dann irgendwie 2000 draufgegangen, weil da wieder ein krasser Sturm war und er wissen wollte, ob er seine Tochter in die Schule schicken kann. Und stand dann Closing, Closings as of nix, also kein Datum. There are current currently no closings in effect. Please check back when the weather, warrants. So.
Und er hat sich gedacht: „Na ja, krass, da kann ja kein großer Sturm sein, aber seltsam, dass das Datum da nicht steht.“ Dann ist er auf die Homepage von der Seite gegangen und hat da einen Riesenbutton gefunden, wo steht: „School Closings in effect.“ Dachte ich sich: „Hä?“ Und, ist, er hat dann auf den Button geklickt und ist rausgekommen bei www.whdh.com Slash Stormforce.
Das Einzige, was nicht mehr gestimmt hat, war hinten Closing Punkt SHTML und da war dann eine Riesenliste so von „Schickt eure Kinder bitte gar nicht in die Schule. Ist ja furchtbar gerade".
-
Daniel Und dann waren noch die alten Dateien auch im Server geblieben, oder?
-
Sascha Genau. Ja, ich mein, das ist jetzt halt ein relativer Doofheitsfehler, aber es gibt halt noch einen anderen. Zum Beispiel leider dann bei Microsoft NetMeeting ist es wohl so gewesen, bis er dann irgendwie, ich glaube, was, 1998 oder was hat er hier geschrieben?
Ich glaube, das war, ja, wohl '98 oder da war in NetMeeting, ein, more information on Microsoft Websites irgendwie und, in, in den Extras, ne, wie man das schon mal so hat, also Info zum Programm und dann klickt man drauf, öffnet sich eine Webseite. Ja, und da haben sie einfach mal die Webseite geändert. Das ist extrem super. Also, und zwar jetzt, das war halt irgendwie Microsoft com Slash, ja, irgendwas, ne. Und wenn man draufgeklickt hat, kam vier null vier, vier null vier Fehler.
-
Daniel Ja, das ist blöd. Ja, das heißt, die müssen das NetMeeting auch aktualisieren.
-
Sascha Ja. Und das ist eben genau so ein Ding. Also ich glaube, dass, dass der sagen würde: „Ja, es mag, es mag auch Gründe geben.
Die meisten, also er führt das halt alles so auf und spricht darüber, dass halt irgendwie eben tatsächlich mit solchen Weiterleitungen, wie wir sie heute jetzt hier besprochen haben, es durchaus Sinn macht,, vielleicht und das ist gut, was du gesagt hast, so was zu machen wie so ein Meta Refresh, also zu sagen: „Hey, das ist, vielleicht ist das, wäre das zum Beispiel eine Lösung, zu sagen: „Also ja, du bist auf diese Podcast-Kategorie gegangen.
Diese Kategorie haben wir aber leider aufgelöst, weil wir haben jetzt ein Video und einen Audio-Podcast. Entscheide dich: Was möchtest du?" So. Anstatt halt einfach nur zu haben, ja, Fehler.
-
Daniel Ja, ich glaube, dann wird der standardmäßig auf den Audio-Podcast weitergeleitet, weil, das ja nun schon das Haupt, teil ist, was wir machen.
-
Sascha Genau und wenn man jetzt richtig cool ist, könnte man dann, das so... Ich meine, das sind alles Sachen, die sind immer sehr, sehr aufwendig. Das weiß ich. Also wenn man jetzt zum Beispiel über diese vier null vier-Seite spricht, die wir mal angesprochen haben, jetzt hier vor, am Anfang, oder mittendrin, dann, dann ist das sehr aufwendig, so eine vier null vier-Seite in der Form zu machen. Also mit, Abfrage: Kommst du von derselben Seite?
Also bist du im Prinzip auf dem Server geblieben und es ist halt ein Fehler aufgetreten. Und genauso hier, wenn ich jetzt hingehe und sage: „Okay, wir haben das geändert und man kommt in diese Podcast-Kategorie und es wird standardmäßig der Audio-Podcast angezeigt, Weiterleitung und wir blenden aber dann, wenn man über diese Podcast-Kategorie gekommen ist, eine Meldung ein. So: „Hey, das hat sich jetzt hier verändert.
Das ist jetzt Audio, Podcast, aber wir haben auch diese neue Kategorie Video-Podcast." Das ist sehr aufwendig und muss man jetzt sicher auch nicht immer machen, aber gerade das Technikwürze wäre so ein Fall, wo ich das schon machen würde, weil das ist ein Ding. Ja, wir haben diesen, wir haben einen Podcast. Wir sind jetzt nicht irgendwie ein Onlineshop, der irgendwie vierzig Kategorien hat und darin Tausende von, Artikeln.
Aber gerade die sollten sich eigentlich auch sehr viel Mühe geben, denn da geht es nun mal auch noch um Geld.
-
Daniel Ja, das stimmt. Also ich, ich, ich weiß halt auch nicht. Also man, es ist natürlich auch immer abhängig davon, wie viel alte Links man hat und wie, wie viel, das also bringt, also diese alten Links dann halt nicht kaputt werden gehen zu lassen.
Wenn das eh nur zwei sind oder so, wenn ich, wenn ich das jetzt eh nur eine Woche lang diesen alten Link hatte, dann muss ich jetzt nicht unbedingt eine, eine Weiterleitung wahrscheinlich dafür einrichten, weil, weil in dieser einen Woche da wahrscheinlich kein Mensch drauf verlinkt hat oder so, aber, aber wenn das halt mehrere Jahre über halt diese alte Link-- diese alte URL-Struktur halt da gewesen ist, dann ist das, dann ist das eigentlich eine Selbstverständlichkeit, halt diese-
-
Sascha Man weiß nicht, in welchen-
-
Daniel Weiterleben zu lassen oder die, die Weiterleitung ein, einbauen zu, einbauen zu müssen.
-
Sascha Ja, und, deshalb eben der Appell von dem Autoren, den ich jetzt, muss ich mal eben kurz gucken, wie der heißt, hier. Das schreibe ich dann noch mal in die Show. Tim irgendwas schreibt mir. Egal, der sagt also im Endeffekt: „Designt eure, designt das." Man, man sollte es einfach designt haben, weil dann kann, dann, dann kann man es sogar relativ einfach machen. Ich glaube, das ist ähnlich wie bei,, Standard oder sehr standardkonform barrierefreiem Webdesign.
Da kann man halt hinterher hingehen und das Design ändern. Also wenn man mit einem, mit einem vernünftigen HTML, Dokument arbeitet oder auch von mir aus mit einem vernünftigen HTML-Dokument – wollen wir uns jetzt nicht drüber streiten – aber dann kann ich das Design einfach wechseln und ich denke, ähnliches Statement will er damit setzen zu den Adressen.
Dann kann man halt, wenn die Adressen gut gestaltet sind und Sinn machen, wie sie das zum Beispiel bei WordPress tun, ja, von ganz alleine, wenn man es eingeschaltet hat, dann kann man einfach mit den Weiterleitungstechniken, die einem zur Verfügung stehen, idealerweise dann diese Header-Weiterleitung, dafür sorgen, dass man weiterhin unter den Adressen erreichbar ist.
Zumal ich sagen muss, also jetzt, wenn man nur einen vier null vier macht und das ist zum Beispiel ein gut gelisteter Blogartikel, und man, man stößt da halt wirklich nur auf eine vier null vier-Fehlermeldung und nicht auf eine Weiterleitung, egal jetzt, ob dann schlecht gemacht, also im Sinne temporär, oder, permanent, dann ist, verpufft's. Dann hat man da vielleicht einen Page Rank von sechs verschenkt. Der ist dann einfach weg und das ist, nicht gut. Jo.
-
Daniel Das war ein guter Schnitt.
-
Sascha Gut, ja, dann würde ich einfach mal sagen, also das war Input. Wir packen in die Show Notes auch einfach noch mal, Beispiele für diese Art von Weiterleitungen rein, dass man das auch noch mal im Code sieht. Ich finde das jetzt nicht so praktisch, wenn man das erklärt, aber, - Wenn man das dann halt 'n bisschen mitlesen kann.
-
Daniel Ja oder vorlesen oder so, das bringt ja hier im Podcast eigentlich nicht so viel.
-
Sascha Genau, das kann man sich dann einfach da dann noch mal, noch mal angucken. Und wie gesagt, die Links, die ich hier angesprochen hab, packen wir selbstverständlich auch rein. Was uns sicherlich gerne interessiert ist, wenn ihr da selber irgendwelche, anderen Ideen noch habt, vielleicht 'ne andere Meinung. Wenn ihr, Anwendung, was mich persönlich sehr interessieren würde, ist, auf jeden Fall Anwendungen für diesen, temporären Statuscode. Also da, wo-wofür man den wohl mal benutzt.
Das würd mich tatsächlich mal interessieren, ob der eine oder andere vielleicht ja von euch mehrmals auch mit Serveradministration zu tun hat, da vielleicht das schon benutzt hat sinnvoll. Weil ich versteh jetzt wirklich nicht, wenn es, dass es der Standard ist. Das ist mir relativ rätselhaft. Selbst wenn's eine tolle Anwendung gibt, die man manchmal braucht, ist mir das rätselhaft, dass sie das so implementiert haben. Aber egal. Auf jeden Fall, freuen wir uns, wenn ihr uns dazu, etwas schreibt.
Du wirst jetzt wahrscheinlich erst mal weiter, Webpanorama, also Panoramabilder aus Schweden zusammenbauen.
-
Daniel Genau, ich hab da so viele Panoramen geschossen, die müssen jetzt alle gearbeitet werden.
-
Sascha Ja schön. Ich werd jetzt erst mal weiter versuchen, wieder aus dem Trott oder vielmehr in den Trott reinzukommen, nachdem ich gestern so geflasht war von der Love Parade und werd mir jetzt gleich eine Fertigpizza an der vierundzwanzig Stunden Tanke holen, die ich dann beim Tatort gucken werde. Das wird mich also wieder auf den Boden der Tatsachen zurückbringen und einen beschaulichen Abend verleben. Es war schön, dass ihr wieder dabei wart und, wir freuen uns auf die nächste Woche.
Weiterleitungsarten und Beispiele
Wir unterscheiden grob in Weiterleitungen, die über direkt über den HTTP-Header erfolgen (.htaccess und PHP) und Weiterleitungen, die erst innerhalb des Dokuments ersichtlich werden (Meta und JavaScript).
- Meta-Weiterleitung 1
- JavaScript-Weiterleitung 1
- .htaccess-Weiterleitung mit mod_redirect 1
.htaccess-Dateien können nur beim Apache Webserver benutzt werden. In dem Verzeichnis, das umgeleitet werden soll, kann man eine .htaccess-Datei mit dem Inhalt der Beispieldatei erstellen.
Wobei zu beachten ist, dass die erste URL ("/ in dem Beispiel) immer lokal zu dem Ordner ist, in dem sich die .htaccess-Datei befindet. Die URL, auf die weitergeleitet wird, muss eine vollständige URL sein. - .htaccess-Weiterleitung mit mod_rewrite 1
Mächtigere Alternative zu mod_redirect, die mit regulären Ausdrücken und boolschen Verknüpfungen sehr komplizierte Weiterleitungen unterstützt.
Das Beispiel macht das gleiche, wie das mod_redirect Beispiel. Außerdem zeigt es, dass mod_rewrite nicht gerade intuitiv ist. - PHP / Skriptgesteuerte Weiterleitung 1
Links zur Sendung
- Gute und Zugängliche Fehlerseiten
- HTTP-Statuscodes 1
- Cool URIs don't change
Erata
Daniel hatte natürlich nicht Recht, als er behauptete, dass 302 Statuscodes die Adresszeile des Browsers nicht verändern.
Erwähnungen 1
Kommentare 21
-
Hi!
Yey! Ein Thema mit dem ich mich, wenn ich ehrlich bin, noch nie beschäftigt habe!Sprich sehr gute Wahl!
Hehe PHP ist toll!
Das "BIST DU DIR SICHER?!" war interessant :Dhttp://www.sitepoint.com/article/guide-url-rewriting hier ist ein Tutorial.. damit lerne ich das gerade :D
Stille... :D
Thomas
P.S.: Man hört irgend wie euch beide leise im Hintergrund.. ist ein wenig komisch anzuhören.. Natürlich nicht schlimm ;)
-
Ich frage mich allerdings weshalb ich mir die Nummer/Ausgabe merken muss, um zu einem bestimmten Thema den passenden Artikel/Podcast zu finden. Ich würde auf die Zahl verzichten, oder besser noch: .../podcast/weiterleitungen
Denn podcast sagt mir schon um was es geht, und die URL auch.
"Don’t point the finger" -- gut das ich keine eigene Seite habe, ... naja.Grüße, Sascha
-
Hallo Sascha,
wir haben uns unter den 1,2 Millionen Menschen in Essen am Wochenende wohl verpasst :D Oder hab ich dich auf einer Ampel gesehen?Zur Sendung:
Warum genau hab ich bisher immer mit Javascript umgeleitet? ;) Bin wieder ein bißchen schlauer. Danke.
Genau solche Hinweise brauchen Bastler wie ich. Hat mir wie die Sendung zu Crosssitescripting super gefallen.So um Julian jetzt nicht den Titel "längster Kommentar der Welt" zu klauen: Schluß :)
Gruß Matt
-
@Matt:
Danke für das Lob. Das hört man auch mal gerne. :)Ich war auf keiner Ampel. Aber eine Freundin hat mir gerade diesen Link geschickt: Angeblich war das aber das einzig stark beschädigte Straßenbauteil:
@supeermario:
Der von DJ angesprochene Proxy für Mod-Rewrite ist allerdings so gut wie nie aktiviert, was vor allem unter Sicherheitsaspekten sehr gut ist. :) Ich hab den auch schon öfter vermisst und dann doch letztlich immer auf veränderte DNS Einträge gesetzt.
-
-
Naja die erste Anmerkung würde besser zu SiM passen, aber die Nacht wollte mir keinen Schlaf schenken, also kommentiere ich schon jetzt. Hab mir die Sendung aufn iPod und dann gehört.
Also gleich mal nebenbei: Es wäre intelligent, die Skype Töne bei einer aufnahme abzuschalten ;)
Also jetzt endlich zum Inhalt der Podcasts:
Bei den Fehlercodes hat der 403 nicht unbeding was mit dem Nutzer zu tun. Klar, dieser kann ein Verzeichnis aufrufen, auf dass er keinen Zugriff haben soll, aber es ist auch möglich, dass die Rechte versehentlich falsch gesetzt wurden und dadurch der Webserver keinen Lesezugriff hat.Ein Beispiel für eine Weiterleitung per Meta wäre z.B. eine Meldung, dass man die Seite verlässt, auch wenn ich das für unnötig halte.
Eine 302 Weiterleitung wäre z.B. auch innerhalb einer Hoempage möglich: Wenn du in einem Script ein große Sicherheitslücke entdeckst, kannst du temporär auf eine Seite weiterleiten, dass der Bereich bearbeitet wird, oder eine Weiterleitung bei einem Formular zur Erfolgsmeldung usw...
So und jetzt noch was allgemein zu Technikwürze:
Mich würde es sehr freuen, wenn ihr den kompletten Beitrag in den Feed packen würdet, dann hätte ich nämlich die gesamten Shownotes auf dem iPod und könnte sie überall anschauen.Der wahrscheinlich längste Kommentar von mir / der Welt ;)
Julian-
@Julian: Den ganzen Beitrag werden wir nicht in den ID3-Tags einbinden. Das hat mehrere Gründe: Zum einen sind nicht alle Podcatcher kompatibel, bzw. zeigen nur einen Teil einer Nachricht, die anderen können keine Umlaute darstellen und nicht zuletzt wollen wir euch auch hierhin umleiten, damit ihr hier kommentieren könnt. Wir wollen Feedback!
-
-
hallo,
danke für euren podcast...
was ich jetzt nicht rausgehört habe, kann man eine weiterleitung fabrizieren bei der die ursprungs-url beibehalten wird und nur quasi der "server" ein anderer ist?-
@supeermario
Das geht mit mod_rewrite und mod_proxy - aber dafür muss dann der Ursprungs-Webserver als Proxy für alle Verbindungen herhalten.
Der URL Rewriting Guide und die Referenz-Doku zu mod_rewrite sagen dir, wie's geht.
mod_rewrite ist so umfangreich, dass es den Rahmen dieser Sendung gesprengt hätte.
-
-
Interessante Folge, auch wenn nichts neues für mich dabei war.
Als Ergänzung vllt noch: Wenn man weiterleiten will und die POST-Daten beibehalten werden sollen, muss man den Statuscode 307 verwenden, die Browser sollen dann allerdings nachfragen (ein sehr bekannter Browser tut das allerdings nicht).
mod_rewrite wäre mal ne eigene Folge wert, weil es wirklich ein sehr brauchbares und mächtiges Tool ist.
-
Zu mod_redirect und mod_rewrite
Ich finde mod_redirect sollte man verwenden wenn man einzelne umleiten will und mod_rewrite ist eher dafür geeignet ganze Blöcke umzuleiten
Beispiel:
Alle Seiten von
http://beispiel/start/
zu
http://beispiel/unangemeldet/start/
umleiten.
Ähnliches wird ach bei php.net verwendet, denn http://php.net/str_replace führt direkt zum Manualeintrag der Funktion str_replaceLG Alexander
-
Ach ja, ein Nachtrag:
mod_rewrite ist zum Weiterleiten zweckentfremdet, wenn die neuen URIs nicht dynamisch aus der aktuellen Andresse generiert werden müssen.
Weitere Infos: http://www.drweb.de/htaccess/htaccess_weiterleitugen.shtml -
Interessante Sendung :)
Schönen Gruß aus Mülheim
Michel -
Hi,
wie kann ich denn Meta-Weiterleitungen abschalten? Mir war bisher keine Browsereinstellung dazu bewusst. Sogesehen kann man sagen: Meta-Weiterleitungen kann man genauso beeinflussen, wie Header-Weiterleitungen, denn es ist ein Verhalten, das der Browser implementieren muss - mit einem selbstgebastelten / angepassten Browser geht es also theoretisch schon, Header-Weiterleitungen zu ignorieren.
Das eigentliche Böse an den Meta-Weiterleitungen ist, dass sie nicht barrierefrei sind. Man kann sich leicht vorstellen, wie ein Benutzer sich fühlt, wenn ein paar Worte einer Seite vorgelesen werden und plötzlich eine andere Seite geladen wird - und der Benutzer weiß nicht, was mit ihr/ihm passiert.
Wie schon ein Vorkommentator angerissen hat, kann ich mir vorstellen, dass 302 für Wartungsseiten zum Einsatz kommen könnte. Die Alternative wäre, dass das Script, welches die Darstellung aller Seiten kontrolliert, einfach die Wartungsseite als anderen Inhalt anzeigt - das könnte aber von Crawlern als neuer Inhalt indiziert werden, also besser auf eine Wartungsseite weiterleiten.
Frage ist nur, ob 302 dafür gedacht ist. Denn eigentlich sagt es ja "die Seite, die Du suchst, liegt gerade da und da" - und dann sieht man aber nicht die Seite, die man sucht, sondern die Wartungsseite.Zum Abschluss noch einen Artikel, den jeder, der Webapplikationen schreibt, kennen sollte: http://www.theserverside.com/tt/articles/article.tss?l=RedirectAfterPost - der Autor beschreibt, wann man POST und wann GET einsetzen sollte und warum ein Redirect in Verbindung mit POST wichtig ist.
Viele Grüße,
Simon -
Der Podcast kam mir ziemlich verplant vor; macht aber auch deutlich das ihr ehrlich über die Sachen redet und nicht einfach Inhalte aus Webseiten vorlest den ich mir auch selbts durchlesen könnte - ich mag es :)
-
Google kann sehr wohl mit HTTP-Weiterleitungen umgehen und bevorzugt diese auch (). Dennoch stimmt es, dass zusätzlich ein Dokument ausgegeben werden sollte, in dem die Weiterleitung manuell ausgeführt werden kann. In den vielen Fällen übernimmt der Webserver dies aber selbstständig.
Das Smashing Magazine hat ürbigens eine nette Sammlung von 404-Fehlerseiten veröffentlicht ().
-
In der Area 404 gibt es ein paar ziemlich ausgefallene 404 Seiten als Anregung:
http://www.plinko.net/404/area404.aspRichtig spannend wird´s ja eigentlich erst mit mod_rewrite - vielleicht gibt es ja demnächst einen cast zu diesem Thema?
Schönen Gruss,
Tobias -
Der Einfachheit halber noch der Link zur 404 Sammlung von Smashing Magazine:
http://www.smashingmagazine.com/2007/08/17/404-error-pages-reloaded/
-
Hallo,
informativer Podcast, bin eben durch Zufall drauf gestoßen.
Aber gleich mal ein Hinweis: Eure Blog-URLs ohne ID und so nennt man entweder Nice URLs oder Permalinks (http://de.wikipedia.org/wiki/Permalink).Ansonsten - Weiter so!
Gruß,
Markus -
Sehr interessantes Thema - leider ein wenig zu chaotisch für meinen Geschmack. Vielleicht solltet ihr vor einer Sendung zumindest kurz besprechen, was ihr erzählen wollt. ;-)
An den anderen Kommentaren kann man ja auch schon sehen, dass da einiges durcheinander gegangen ist.
- Short- oder Nice-URLs sind URLs, die vortäuschen, dass man es mit statischen HTML-Seiten zu tun hat.
- Permalinks sind quasi Aliase für URLs, die sich eventuell ändern könnten.
- Das hat nichts zu tun mit "Good URLs don't change" - Dabei geht es darum, dass unter URLs immer der gleiche Content abzurufen ist. Wenn Dich also vor 10 Jahren mal jemand verlinkt hat, sollte der Link immer noch funktionieren, auch wenn man mittlerweile 3x das CMS gewechselt hat. Recht schwierig das immer durchzuhalten. Zumal man ja auch mal Content rausschmeisst.
- Clientseitige Weiterleitung, die nicht durch den Benutzer ausgelöst werden (Link "Bitte klicken Sie hier für unsere neue Homepage) können AFAIK nicht barrierefrei sein.
Ich persönlich halte die Wichtigkeit von lesbaren URLs für überschätzt. Schön: Sollte Google den verwendeten Wörtern dort einen Wert zuerkennen, kann man es deswegen benutzen. Das ist auch der Grund, warum ich das so mache. Aber als normaler Surfer gebe ich doch weder URLs mit Parametern noch mit lauter Slashes ein, oder? Oder kommt IRGENDWER von Euch hier auf die Seite und gibt in der Browserzeile mehr als technikwuerze.de ein? Inzwischen lass ich sogar das .de weg :-D
Der Hinweis auf den A List Apart Artikel ist klasse. Da sind tolle Tipps drin.
Macht weiter Jungs! Ihr seid trotz meine kleinen Kritik hier der beste Technik-Podcast, den ich kenne und selbst in meiner Gesamtenwertung seid ihr in den Top5 (Von 20 oder so) ;-)
-
Simon fragt weiter oben, ob sich die Weiterlietungen auschalten lassen:
Ja. dazu in Opera (der meiner Ansicht nach von Natur aus anpassbarste Browser) nach (in der Englischen Version) Tools->Preferences->Advanced->Network->enable automatic redirection (Häkchen raus)
und dann in Firefox mit dem Add-On Webdeveloper (das übrigens absolut empfehlenswert ist) unter Disable->Disable Meta redirects (Häkchen hin)
Bei Error 404 gibts für den Standard-Nix-mit-Technik-am-Hut-hab-Surfer den netten IE, der aus einem simplen 404-error was schönes zaubert und dazu auffordert die eingabe zu überprüfen.
temporäre umleitung kann man vielleicht gebrauchen, wenn man die seite 2 mal gehostet hat (ausirgendwelchen gründen) und dann bei der einen was umbaut und solange auf die alternative Seite umleitet. -
Wollte nur mal anmerken das man bei einer Weiterleitung per Meta oder Java Script generell vollständige URL's verwenden sollte.
Und das nicht nur weil es den Spezifikationen entspricht, sondern ältere Browser dies sonst nicht unterstützen. Ein weiterer Punkt ist auch dieser "Im Cache" link bei Google. Wenn in der Aufgerufenen Seite eine Weiterleitung mit relativer URL verwendet wird, kann diese natürlich nicht funktionieren, da sich die Seite auf Google befindet.