Jannes: Welcher HTTP-Antwortcode bei Umbauarbeiten?

Hallo liebe Fachleute,

welchen Antwortcode bzw. Header sollte man am besten senden, wenn von einer Seite vorübergehend keinerlei Dokumente zu beziehen sind, wegen Umbauarbeiten?

(Und sollte das dann auch HTTP/1.0 kompatibel sein, oder reicht HTTP/1.1 aus?)

404 Not found
ist ja nicht gerade informativ und verschreckt mich ein wenig

307 Moved Temporarily
ist auch nicht wirklich passend, weil ja keine neue Location mitgeliefert wird

Also, wie macht manns richtig?

Gruss,
Jannes

  1. 404 Not found
    ist ja nicht gerade informativ und verschreckt mich ein wenig

    404 Not found ist ansich der richtige, da er ja nicht darüber wertet, warum es nicht gefunden wurde und obs ein Dauerzustand ist oder nicht. Wenns wirklich "weg" ist, wäre "410 Gone" passender. Allerdings dürfte der Normalanwender mit dank der "schönen Fehlermeldungen" moderner Browser mit einer Nachricht wie etwa "gibts nicht mehr" konfrontiert werden.

    Also, wie macht manns richtig?

    Ich würde "307 Temporary Redirect" wählen und auf eine Platzhalterseite verweisen, die den Umstand erläutert.

    Besser aber: auf auf einem nicht-Produktivsystem umbauen und dann in der Serverkonfiguration nur das Web bzw. den Virtual Host umstellen, dann ist die "Downtime" praktisch nicht vorhanden.

    1. Hi Suit,

      Ich würde "307 Temporary Redirect" wählen und auf eine Platzhalterseite verweisen, die den Umstand erläutert.

      ok.

      Besser aber: auf auf einem nicht-Produktivsystem umbauen und dann in der Serverkonfiguration nur das Web bzw. den Virtual Host umstellen, dann ist die "Downtime" praktisch nicht vorhanden.

      Aha, klingt gut. Kann ich hier aber leider nicht nutzen, da es sich nicht um einen eigenen Server (im WWW) handelt, sondern nur um einen etwas besseren Shared-Host-Account.

      Könnte man das auch mittels rewrite machen? , also in etwa so:
      man hat drei (sub)domains:
        www.meine_domain.de
        zwei.meine_domain.de
        drei.meine_domain.de
      Auf www.meine_domain.de liegt eine htaccess-Datei, die alle Anfragen an www.meine_domain.de nach zwei.meine_domain.de umleitet. Dann kann man auf der drei umbauen solange man will, und leitet nach Fertigstellung auf die drei um.

      Würde das funktionieren, mittels rewrite beim Apache? Ein erkennbares Redirect kommt nicht in Frage. Die einzige Domain die nach aussen hin erkennbar sein dürfte wäre die www.meine_domain.de.

      Gruss,
      Jannes

      1. Angenommen deine aktuelle Seite liegt auf example.com[1], dann würde ich folgende vorgehensweise vorschlagen.

        Du erstellst ein Unterverzeichnis "example.com/neu/" und schützt dieses per Passwort. Das Verhindert, dass irgendjemand[2] die Seite sehen kann.

        Eine neue Subdomain oder irgendwelche rewrite-Regeln brauchst du dafür nicht.

        Dort entwickelst du gemütlich herum - anstatt example.com/foo.php?bar=baz rufst du deine Dokumente halt mit example.com/neu/foo.php?bar=baz auf. Wenn alles fertig ist und funktioniert verschiebst du den Inhalt vom Stammverzeichnis in ein Verzeichnis "alt/" und alles von neu ins Stammverzeichnis.

        Aufpassen musst du natürlich mit Pfadangaben, diese sollten relativ sein - oder du baust in deine Scripte ein Präfix-Variable für den Pfad ein. die du dann von "/neu/" auf "/" änderst.

        [1] RFC 2606, Abschnitt 3
        [2] Suchmaschinen, aussenstehende.

        1. Hi suit,

          Aufpassen musst du natürlich mit Pfadangaben, diese sollten relativ sein - oder du baust in deine Scripte ein Präfix-Variable für den Pfad ein. die du dann von "/neu/" auf "/" änderst.

          ok, ich arbeite (fast) immer mit absoluten Pfadangaben. Hat viele Vorteile, allerdings jetzt nicht für die vorgeschlagene Vorgehensweise. Mit einer Präfixvariablen sollte es aber gehen. Muß ich mal in Ruhe einbauen und testen. Der gewonnene Nutzwert wiegt den Aufwand allemal auf.

          Gruß,
          Jannes

  2. Hi,

    welchen Antwortcode bzw. Header sollte man am besten senden, wenn von einer Seite vorübergehend keinerlei Dokumente zu beziehen sind, wegen Umbauarbeiten?

    503 Service Unavailable:

    The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the delay MAY be indicated in a Retry-After header.

    Wenn das Ende der Umbauarbeiten abzusehen ist, dann also auch noch ein Retry-After hinzufügen.

    (Und sollte das dann auch HTTP/1.0 kompatibel sein, oder reicht HTTP/1.1 aus?)

    Auch HTTP/1.0 kennt 503 und Retry-After - könnte man also abhängig vom Protokoll beantworten, in dem man nur 1.0 bzw. 1.1 "variabel" hält.

    (Ob HTTP/1.1 "ausreicht", könnte man sich überlegen. Dass Suchmaschinen-Bots heutzutage noch ausschliesslich 1.0 nutzen, kann ich mir eher nicht vorstellen. Und bei von menschlichen Besuchern benutzen Clients sollte man 1.1 mittlerweile auch voraussetzen können.)

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. Hi,

      503 Service Unavailable:

      [...]

      Wenn das Ende der Umbauarbeiten abzusehen ist, dann also auch noch ein Retry-After hinzufügen.

      oh, den 503 habe ich in der Übersicht wohl übersehen.

      Habe hier, auf der Suche nach der korrekten Verwendung von "Retry-After" eine Sammlung von Lösungen/Lösungsansätzen gefunden.

      Gruß und Dank,
      Jannes