dey: #include virtual oder iframe

Servus

Ich bin im Archiv auf das Thema include für html gestossen (!= asp oder php).
Das ist auch für mich interresant, weil scheinbar recht simpel.
So wie ich das sehe verhalten sich
<!--#include virtual="menu.html"--> und
iframe recht ähnlich.

Wo sind anwendungstechnisch Unterschiede, Vorteile, Nachteile?

bydey

  1. Hi,

    Ich bin im Archiv auf das Thema include für html gestossen (!= asp oder php).

    (== SSI)

    So wie ich das sehe verhalten sich
    <!--#include virtual="menu.html"--> und
    iframe recht ähnlich.

    Nein, sie sind völlig anders. Bei SSI wird serverseitig ein Teil der Seite durch den Inhalt einer Datei bzw. lokalen Ressource ersetzt; bei einem <iframe> wird ein HTML-Element eingesetzt, welches *bei einem hinreichend mächtigen Client* dazu führt, dass in der Seite ein definiert großer Bereich reserviert wird, in dem bei einem zusätzlichen Request die angegebene Ressource separat hinzugeladen wird.

    Wo sind anwendungstechnisch Unterschiede, Vorteile, Nachteile?

    SSI: Funktioniert *garantiert* bei jedem Client (wenn es per se funktioniert); bestimmt die (einzige) für die Ressource verwendete serverseitige Technik, wird *nur* serverseitig berechnet.

    <iframe>: Erfordert clientseitige Fähigkeiten, erzeugt zusätzliche Requests, hält die eigentliche Seite schlank, ermöglicht Caching der eingebundenen Ressourcen.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Servus

      Nein, sie sind völlig anders. Bei SSI wird serverseitig ein Teil der Seite durch den Inhalt einer Datei bzw. lokalen Ressource ersetzt; bei einem <iframe> wird ein HTML-Element eingesetzt, welches *bei einem hinreichend mächtigen Client* dazu führt, dass in der Seite ein definiert großer Bereich reserviert wird, in dem bei einem zusätzlichen Request die angegebene Ressource separat hinzugeladen wird.

      Wo sind anwendungstechnisch Unterschiede, Vorteile, Nachteile?

      SSI: Funktioniert *garantiert* bei jedem Client (wenn es per se funktioniert); bestimmt die (einzige) für die Ressource verwendete serverseitige Technik, wird *nur* serverseitig berechnet.

      <iframe>: Erfordert clientseitige Fähigkeiten, erzeugt zusätzliche Requests, hält die eigentliche Seite schlank, ermöglicht Caching der eingebundenen Ressourcen.

      Kann ich zusammenfassend behaupten, dass das SSI include eintauglicher Ersatz für einen iframe ist, wenn ich dies z.B. für eine einheitliche Navigation auf allen Seiten verwenden möchte?

      bydey

      1. Hallo bydey,

        Kann ich zusammenfassend behaupten, dass das SSI include eintauglicher Ersatz für einen iframe ist, wenn ich dies z.B. für eine einheitliche Navigation auf allen Seiten verwenden möchte?

        Fuer diesen Einsatzzweck ist SSI in meinen Augen bestens geeignet,
        und (gegenueber iframes) auf jeden Fall vorzuziehen.

        mfg
        Thomas

  2. Hallo,

    Ich bin im Archiv auf das Thema include für html gestossen (!= asp oder php).
    Das ist auch für mich interresant, weil scheinbar recht simpel.
    So wie ich das sehe verhalten sich
    <!--#include virtual="menu.html"--> und
    iframe recht ähnlich.

    Wo sind anwendungstechnisch Unterschiede, Vorteile, Nachteile?

    Du verwechselst da etwas.
    <!--#include virtual="menu.html"-->
    ist SSI = Server Side Include
    (Im Prinzip das gleiche wie PHP- oder ASP-Includes, ausser
    dass mit diesen Technologien mehr moeglich ist als mit SSI.)
    SSI funktioniert je nach Server-Konfiguration auch,
    wenn die Dateien auf .html enden, meist aber muessen sie
    auf .shtml enden.
    Braucht einen SSI-faehigen Server.
    Vorteil: "laeuft" mit allen Browsern.

    iframes sind rein client-seitig.
    Funktionieren auch offline bzw. ohne Webserver.
    "Laufen" nur mit gewissen Browsern, z.B. _nicht_ mit Netscape 4.x
    Viele Nachteile von Frames und mehr...

    => Wenn Du SSI zur Verfuegung hast, nutze sie. Oder PHP, JSP, ASP...
    Von iframes wuerde ich abraten.

    mfg
    Thomas

    P.S. eine alte Seite von mir duerfte Dir den Einstieg in SSI erleichtern:
    http://www.tiptom.ch/tests/phpssi/ssi_allg.shtml

    1. Hi,

      (Im Prinzip das gleiche wie PHP- oder ASP-Includes, ausser
      dass mit diesen Technologien mehr moeglich ist als mit SSI.)

      das ist Ansichtssache. Wie leicht fällt es Dir, mit PHP oder ASP eine lokale CGI-Ressource einzubinden? :-)

      SSI ist von der Sprache her sehr einfach gehalten. Das tut der Mächtigkeit aber keinen Abbruch.

      wenn die Dateien auf .html enden, meist aber muessen sie
      auf .shtml enden.

      Das ist eine schlechte Serverkonfiguration - genau wie wenn PHP-Dateien auf .php enden müssen. Wobei ausschlaggebend die URL ist, nicht der Dateiname.

      Von iframes wuerde ich abraten.

      Alle Pauschalisierungen sind falsch und dumm. Mir fehlt hier das Wort "bedingt".

      Cheatah

      --
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
      1. Hallo Cheatah,

        das ist Ansichtssache. Wie leicht fällt es Dir, mit PHP oder ASP eine lokale CGI-Ressource einzubinden? :-)

        Bei ASP weiß ich es nicht, bei PHP (wenn es als Apache-Modul installiert ist) geht es so:

        - wenn die lokale Resource selbst ein PHP-Script ist: include ('script.php');
         - wenn die lokale Resource etwas anderes ist: virtual ('script.pl');

        Ich finde das nicht wirklich komplexer als SSI.

        Viele Grüße,
        Christian

  3. Hallo dey,

    So wie ich das sehe verhalten sich
    <!--#include virtual="menu.html"--> und
    iframe recht ähnlich.

    Nein, da unterliegst Du einem Irrtum.

    Wo sind anwendungstechnisch Unterschiede, Vorteile, Nachteile?

    Also. <iframes> sind HTML-Elemente um ein komplettes HTML-Dokument (inklusive <head>-Bereixh, doctype usw.) in ein anderes einzubinden. Sie funktionieren ähnlich wie normale <frames>, nur, dass sie nicht in ein <frameset> eingebunden werden sondern eben direkt in ein bestehendes HTML-Dokument, wo sie (optisch) als blocklevel-Element erscheinen.

    SELFHTML Über <frames>: http://selfhtml.teamone.de/html/frames/index.htm
    und speziell über <iframes>: http://selfhtml.teamone.de/html/frames/eingebettete.htm

    ZU den Problemen und Nachteilen von <frames> und <iframes> (z.B. beim Bookmarken oder Verlinken, oder Probleme mit Suchmaschinen) findest Du viel im Archiv (http://selfsuche.teamone.de).

    <!--#include virtual="menu.html"--> sind eine Möglichkeit HTML-Teile (also in der Regel kein komplettes HTML-Dokument) serverseitig in ein HTML-Dokument einzufügen. Es handelt sich hierbei nicht um HTML sondern um die severseitige Sprache SSI (Server Side Includes), ähnlich wie beispielsweise PHP. Der Klient (also derjenige, der die Seite nachher zu Gesicht bekommt), sieht im Quelltext nichtsmehr vom SSI, sondern statt dessen den eingefügten Quellcode. Hierzu muss der Server Deines Providers jedoch SSI unterstützen.

    Dr. Web liefert hierzu eine kurze, einführende Beschreibung:
    http://www.drweb.de/programmierung/ssi_1.shtml

    Genaueres/Weiterführendes findest Du sicher bei http://google.de.

    Viel Erfolg + schö
    stefan