Michael Schröpl: Offline 404-Fehler abfangen

Beitrag lesen

Hi Kiska

Ich muss aber diese in JS gestalten, da sie nur offline und auf
verschiedenen Systemen laufen muss (Internetzugang, lokale Webserver
und Installation von Fremdsoftware ausgeschlossen!).

Aha. Dein mitgelieferter JavaScript-Code ist also keine "Fremdsoftware"?
(Auch dann nicht, wenn sie vom M$IE interpretiert wird, der ggf. mit der
sand box nicht beliebig korrekt umgeht?)

Die Seite besteht aus .html-Dateien, die durchnummeriert sind.
Zu jeder „Nummer“ gibt's verschiedene Unterpunkte, die nach dem
selben Prinzip durchnummeriert sind. Hier lese ich mit JavaScript
die Dateinamen aus und generiere den Link (no problem :)!).

Wie auch schon Sven meinte: Du wirst mit dynamischen Links nicht
glücklich werden.
Mache alles in statischem HTML - aber lasse Dir dieses generieren!
Mit Templates bist Du ja eh schon auf der richtigen Schiene.

Wenn Du nämlich ausschlielßlich statische Links verwendest, dann kannst
Du Deine Seiten mal schnell über einen lokalen Webserver ansprechbar
machen und mit einem handelsüblichen links checker drüber fahren.
Der findet garantiert jeden broken link. Ich mache so etwas jedes Mal,
bevor ich irgendwelche nennenswerten Änderungen auf meine Homepage lade;
1500 Dokumente prüfen dauert eine Minute, die Zeit ist mir das wert.

Das Problem ist, dass es die Unterpunkte bei weitem nicht überall
gibt, da ich aber mit Templates arbeite, existieren also mehr als
genug Links, die auf nicht vorhandenen Seiten zeigen.

Wenn Du die Links statisch generierst, dann kann Dein Generator zu diesem
Zeitpunkt prima prüfen, welche Ziel-Dokumente es gibt und welche nicht.

Frage, wie löse ich das Problem, ohne manuell die fehlenden Seiten
als eine Standard-Error-Seite abzuspeichern?

Indem Du gar nicht erst Links darauf generierst, beispielsweise.

Ich kann wohl keine 404-Fehler mit clientseitiger JS-Lösung abfangen.
Gibt's da vielleicht ein Trick? Gerne auch NICHT JS-Lösung!

Wenn Du alles außer JavaScript in der "Produktionsumgebung" gemäß
Aufgabenstellung ausgeschlossen hast, bleibt Dir nur, korrekte Seiten
ohne broken links zu bauen.
Mit entsprechender Infrastruktur ist das nicht schwer, solange Du nur
statische Links hast. (Wobei ich nicht ausschließe, daß Dein JavaScript-
Code dynamisch zwischen ihnen umschaltet!)

Viele Grüße
      Michael