Christian Wermelinger: externes objekt (hmtl-datei) mittels ssi in html-seite einbinden - keine absolut

Hallo
Ich möchte ein externes objekt(hmtl-datei) in eine bestehende hmtl-seite einbinden. grund: externe html-datei ändert sehr oft den inhalt. soweit so gut. ich versuchte dies mit cgi/ssi zu realisieren. dafür verwende ich zu testzwecken folgendes html file, aus welchem schliesslich die externe datei aufgerufen werden sollte. Relevant ist eigentlich nur die zweitunterste zeile (<!--#include virtual="/cgi-bin/ssi2.shtml"--> :

<html>
<head>
<title>Dynamisches HTML mit Server Side Includes</title>
</head>
<body>
<h1>Dynamisches HTML mit Server Side Includes</h1>
Datum/Uhrzeit auf dem Server-Rechner: <!--#echo var="DATE_LOCAL"--><br>
Name dieser HTML-Datei: <!--#echo var="DOCUMENT_NAME"--><br>
Installierte Server-Software: <!--#echo var="SERVER_SOFTWARE"--><br>
Ihr WWW-Browser: <!--#echo var="HTTP_USER_AGENT"-->
<h3>Weitere Informationen:</h3>
<!--#include virtual="/index.html"-->
</html>

In diesem Fall wird also die datei index.html meines servers aufgerufen (nur zu testzwecken). funktioniert. sobald ich jedoch absolute pfadangaben verwende geht gar nix mehr. dann kann ich nicht mal auf die index-datei meines servers zugreifen. <!--#include virtual="http://www.myserver.com/index.html"--> funktioniert also nicht.woran liegt das? hab es auch schon mit dem befehl <!--#include file="http://www.myserver.com/index.html"--> versucht. verschafft leider auch keine abhilfe.

danke schon im voraus für eure hilfe!!!

Gruss
Christian Wermelinger

  1. Hallo
    Ich möchte ein externes objekt(hmtl-datei) in eine bestehende hmtl-seite einbinden. grund: externe html-datei ändert sehr oft den inhalt. soweit so gut. ich versuchte dies mit cgi/ssi zu realisieren. dafür verwende ich zu testzwecken folgendes html file, aus welchem schliesslich die externe datei aufgerufen werden sollte. Relevant ist eigentlich nur die zweitunterste zeile (<!--#include virtual="/cgi-bin/ssi2.shtml"--> :

    sorry fehler! lautet natürlich so:
    <!--#include virtual="/index.html"--> :

    <html>
    <head>
    <title>Dynamisches HTML mit Server Side Includes</title>
    </head>
    <body>
    <h1>Dynamisches HTML mit Server Side Includes</h1>
    Datum/Uhrzeit auf dem Server-Rechner: <!--#echo var="DATE_LOCAL"-->

    Name dieser HTML-Datei: <!--#echo var="DOCUMENT_NAME"-->

    Installierte Server-Software: <!--#echo var="SERVER_SOFTWARE"-->

    Ihr WWW-Browser: <!--#echo var="HTTP_USER_AGENT"-->
    <h3>Weitere Informationen:</h3>
    <!--#include virtual="/index.html"-->
    </html>

    In diesem Fall wird also die datei index.html meines servers aufgerufen (nur zu testzwecken). funktioniert. sobald ich jedoch absolute pfadangaben verwende geht gar nix mehr. dann kann ich nicht mal auf die index-datei meines servers zugreifen. <!--#include virtual="http://www.myserver.com/index.html"--> funktioniert also nicht.woran liegt das? hab es auch schon mit dem befehl <!--#include file="http://www.myserver.com/index.html"--> versucht. verschafft leider auch keine abhilfe.

    danke schon im voraus für eure hilfe!!!

    Gruss
    Christian Wermelinger

    »»

    1. Hallo Christian,

      (...) sobald ich jedoch absolute pfadangaben verwende geht gar nix mehr. dann kann ich nicht mal auf die index-datei meines servers zugreifen. <!--#include virtual="http://www.myserver.com/index.html"--> funktioniert also nicht.woran liegt das? hab es auch schon mit dem befehl <!--#include file="http://www.myserver.com/index.html"--> versucht. verschafft leider auch keine abhilfe.

      #include funktioniert nur mit Pfadangaben auf dem Server.
      Ein Auszug aus der Apache-Doku (http://www.apache.org/docs/mod/mod_include.html) zu #include virtual:

      The value is a (%-encoded) URL relative to the current document being parsed. The URL cannot contain a scheme or hostname, only a path and an optional query string. If it does not begin with a slash (/) then it is taken to be relative to the current document.

      Viele Grüße,
      Heiko

      1. Danke Heiko

        War sehr aufschlussreich. Habs mir doch gedacht. Vielen Dank für dein Tipp! Weist du oder sonst wer, wie ich das problem lösen kann? alternativen? am liebsten hätte ich was serverseitiges (zb cgi kein java), da ich so fehler möglichst vermeiden kann.

        Gruss
        Christian Wermelinger

        1. Hi Christian,

          mit Perl geht das auf jeden Fall. Leider bin ich da aber - wie bei vielem hier - noch ziemlich in den Anfängen, aber es gab neulich einen Beitrag von Stefan Muenz mit ähnlicher Thematik:
          <../../sfarchiv/2000_3/t18383.htm#a93197>

          Und in den Perl-FAQs gibt's auch was zu dem Thema: http://www.perl.com/CPAN-local/doc/manual/html/pod/perlfaq9.html#How_do_I_fetch_an_HTML_file_.

          Das sollte zumindest eine Basis zum SELF-machen sein, da weisst Du welches Modul Du brauchst, und hast etwas Beispielcode.

          Schönes Wochenende,
          Heiko