wolfgang wild: SSI und javascript

Hallo Leute,

hab folgendes Problem:
möchte den kompletten Inhalt der Browser URL Zeile auslesen und
mit SSI an ein cgi Script übergeben, welches dann URL abhängig
einen Quelltext liefert.
z.B. http://meine@seite.de
Da meineswissens http://meine@seite.de nur mit javascript top.document.URL ausgelesen werden kann,
suche ich nun eine Lösung, wie ich top.document.URL in
<!--#exec cgi="/cgi-bin/redirect.pl?ID=top.document.URL" -->
einbinden kann.

Danke für Eure Hilfe
Gruß
Wolfgang

  1. Versteh noch nicht ...

    Interessiert Dich, wo die Leute herkommen,
    oder welche Seite sie aufrufen?

    Guck mal in den cgi-Umgebungsvariablen.
    Mit HTTP_Referer, SERVER_NAME, DOCUMENT_ROOT oder PATH_INFO(-TRANSLATED)
    lässt sich da bestimmt was basteln ...

    Gruss, itsme

  2. Grüssi,

    möchte den kompletten Inhalt der Browser URL Zeile auslesen und
    mit SSI an ein cgi Script übergeben, welches dann URL abhängig
    einen Quelltext liefert.
    z.B. http://meine@seite.de
    Da meineswissens http://meine@seite.de nur mit javascript top.document.URL ausgelesen werden kann,

    location.* stellt da in Javascript einige Methoden zur Verfügung

    suche ich nun eine Lösung, wie ich top.document.URL in
    <!--#exec cgi="/cgi-bin/redirect.pl?ID=top.document.URL" -->
    einbinden kann.

    ich schätze mal du wirst die Server/Dokumentadresse im redirect.pl abfragen müssen, da SSI verschachteln (vermutlich) nicht geht! Kannst dir aber auch mit META-Tags Abhilfe schaffen:

    <meta http-equiv="refresh" content="5; URL=http:/cgi-bin/redirect.pl?ID=<!--#echo var="PATH_INFO" -->">

    hth,
      regenfeld

  3. ne,ne funzt alles nicht.

    es geht um @Domains
    eMailadressen die als URL eingegeben werden
    und dann steht da zB. http://wolli@gigatrack.de
    im Browser
    Da ich damit einen subdomainservice machen will,
    muß ich die URLzeile auslesen und an ein script
    übergeben.
    Dies möchte ich mit ssi machen,da dann im Endefekt
    für den User sichtbar nur ein Framset zu seiner Seite
    im Quelltext steht.
    das script soll über ssi mit /script.cgi/?id=URLzeile
    aufgerufen werden und gibt URLzeile abhängig ein
    Frameset mit der WeiterleitungsURL zurück.

    Aber leider bekomme ich die komplette URLzeile
    nur mit top.document.URL nämlich http://wolli@gigatrack.de
    bei allen anderen Progammiersprachen wird das
    wolli@ nicht ausgelesen sondern nur gigatrack.de

    Wie kann ich also top.document.URL
    in ssi einbinden
    <!--#exec cgi="/cgi-bin/redirect.pl?ID=top.document.URL" --> ????

    1. Moin

      ne,ne funzt alles nicht.

      und dann steht da zB. http://wolli@gigatrack.de

      Wie bereits richtig angemerkt hast, kannst du alles vor dem @ nur mit JavaScript auslesen. Du machst also auf die Startseite von gigatrack.de ein Frameset mit zwei Frames: Eins davon null Pixel breit und mit einem JavaScript a la
      top.andererFrame.location.href="/cgi-bin/redirect.pl?ID="+top.location.href.substr(top.location.href.indexOf('/')+2,top.location.href.indexOf('@')-top.location.href.indexOf('/')-2);
      Und in das andere schreibst du eine Liste aller Seiten damit auch Benutzer ohne JavaScript nicht verloren sind.

      --
      Henryk Plötz
      Grüße von der Ostsee

    2. Hi,

      es geht um @Domains

      FTP erlaubt den Einsatz von SSI nicht. HTTP kannst Du ja nicht meinen, da RFC 1738 (http://www.ietf.org/rfc/rfc1738.txt) hierfür das "@"-Zeichen im Hostpart explizit untersagt:

      "3.3. HTTP
      [...]
      An HTTP URL takes the form:

      http://<host>:<port>/<path>?<searchpart>

      [...] No user name or password is
      allowed. [...]"

      und dann steht da zB. http://wolli@gigatrack.de
      im Browser

      Du möchtest es bitte unterlassen, dem Internet und den mit ihm interagierenden Systemen aktiv Schaden zuzufügen, danke.

      Da ich damit einen subdomainservice machen will,

      Ceci n'est pas un subdomain.

      Aber leider bekomme ich die komplette URLzeile
      nur mit top.document.URL

      Clientseitige Informationen sind serverseitig ohnehin nicht zu erhalten. Selbst wenn dieser grobe Unfug also erlaubt _wäre_, würden Dir SSI, CGI, PHP & Co. nicht die Bohne helfen.

      Cheatah