Gast: http-header: Anderen Absender angeben

Hallo,

ich möchte einen Service anbieten, dass Webmaster eine HTML- Datei mit Platzhaltern versehen, mein Programm die HTML- Datei liest, die Platzhalter füllt und wieder ausgibt.

Das geht soweit, siehe Lokale und entfernte Datei lesen von gestern.

Nun ist aber das Problem, dass die "fremde", bearbeitete HTML- Seite unter meiner Domain ausgeliefert wird, also stimmt die URL der enthaltenen Bilder usw. nicht, sie werden vom Browser nicht gefunden.

Am einfachsten wäre es, wenn ich dem Browser die ursprüngliche Domain "vorgaukeln" könnte.

Wie geht das? Oder wie könnte man das Problem sonst angehen?

Gruß, Frank

  1. Hello,

    Wie geht das? Oder wie könnte man das Problem sonst angehen?

    Du willst also einen HTTP-Proxy mit PHP nachbauen? Habe ich das richtig verstanden?

    Du möchtest eine vollständige fremde "Seite" einlesen und als eigene wieder ausgeben?

    Dann musst Du alle Ressourcebezeichner finden und umschreiben. Überlege erstmal, wo überall welche versteckt sein können und wie die aussehen. Sie können nämlich auch reichlich Attribute und Parameter enthalten...

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Hello,

      Du möchtest eine vollständige fremde "Seite" einlesen und als eigene wieder ausgeben?

      Nein, ich will mir die nicht aneignen.

      Dann musst Du alle Ressourcebezeichner finden und umschreiben.

      Ja, damit habe ich angefangen, ich ersetze z.B.
      src="./
      durch
      src="http://example.com/

      Gilt auch nur, wenn alles brav in einer Zeile steht. Bei
      src= (Zeilenumbruch)
      "./bild.gif"
      klappt's schon nicht.

      Überlege erstmal, wo überall welche versteckt sein können und wie die aussehen. Sie können nämlich auch reichlich Attribute und Parameter enthalten...

      Ja, das wäre wohl eine Lebensaufgabe, aber ich heisse nicht Google. Deshalb die Frage nach der Möglichkeit, dem Browser die alte "Umgebung" vorzugaukeln.

      Gruß, Frank

      1. Hi,

        Deshalb die Frage nach der Möglichkeit, dem Browser die alte "Umgebung" vorzugaukeln.

        Da gäbe es m.E. höchstens das base-Element.

        Wie zuverlässig das für dein Vorhaben funktionieren wird, kann ich dir aber nicht sagen.

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
        1. Hi,

          Da gäbe es m.E. höchstens das base-Element.

          Geil - weisst du, wenn man stundenlang ein Problem wälzt und dann so eine einfache Lösung.

          Danke. Sogar die Links funktionieren und führen wieder auf die ursprüngliche URL zurück. Da kann man wohl verschmerzen, dass die von mir ausgelieferte Seite eine "falsche" URL hat.

          Wie zuverlässig das für dein Vorhaben funktionieren wird, kann ich dir aber nicht sagen.

          Okay, müssen Tests zeigen.

          MfG Frank

          1. Moin!

            http://forum.de.selfhtml.org/my/?t=206495&m=1401991

            MFFG (Mit freundlich- friedfertigem Grinsen)

            fastix

      2. ich möchte unerfahrenen Webmastern die Möglichkeit geben, ihre HTML- Seite mit aktuellen Meldungen "aufzupeppen".

        Das wäre mit PLatzhaltern recht einfach, die ich ersetze.

        Bisher wurde das durch Einbauen eines iframe gemacht, aber die eingebaute Seite ist eine fertige Seite mit eigenem Layout. Der ganze Overhead wie CSS, Javascript usw. muss erneut geladen werden.

        Und wenn CSS der Hauptseite geändert wird, ist die eingebaute Seite dagegen blind und taub.

        Gruß, Frank

        1. Hi,

          ich möchte unerfahrenen Webmastern die Möglichkeit geben, ihre HTML- Seite mit aktuellen Meldungen "aufzupeppen".

          Das wäre mit PLatzhaltern recht einfach, die ich ersetze.

          Das kann aber kaum der richtige Weg sein.
          Nicht zuletzt deshalb, weil du ihre Seiten immer erst auf deinen Server laden musst, bevor du sie dann zum Client schickst - doppelte Wartezeit.

          Bisher wurde das durch Einbauen eines iframe gemacht, aber die eingebaute Seite ist eine fertige Seite mit eigenem Layout. Der ganze Overhead wie CSS, Javascript usw. muss erneut geladen werden.

          Bspw. JavaScript dafür zu benutzen, böte sich eher an.
          Du gibst ihnen ein Script zum einbinden in ihre Seiten, und das lädt dann die Meldungen nach (bzw. enthält sie bereits), und fügt dann passenden HTML-Code ins Dokument ein.
          Gut, funktioniert nicht, wenn kein JavaScript aktiviert ist beim Benutzer. Dann fehlen halt ein paar unwichtige „aktuelle Meldungen“, auch egal.

          MfG ChrisB

          --
          RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
          1. Hi,

            ... doppelte Wartezeit.

            Ja, ich weiss. Und wenn viele fremde mega-grosse HTML- Dateien durchlaufen, bekomme ich vielleicht ein Traffic-Problem.

            Aber mein Psychiater sagt, ich soll meinen Kontrollzwang ablegen ;-)

            Bspw. JavaScript dafür zu benutzen, böte sich eher an.
            Du gibst ihnen ein Script zum einbinden in ihre Seiten, und das lädt dann die Meldungen nach (bzw. enthält sie bereits), und fügt dann passenden HTML-Code ins Dokument ein.

            Gut, funktioniert nicht, wenn kein JavaScript aktiviert ist beim Benutzer. Dann fehlen halt ein paar unwichtige „aktuelle Meldungen“, auch egal.

            Ja, guter alternativer Tipp.

            Gruß, Frank

          2. Hi,

            Du gibst ihnen ein Script zum einbinden in ihre Seiten, und das lädt dann die Meldungen nach (bzw. enthält sie bereits), und fügt dann passenden HTML-Code ins Dokument ein.

            Ein eingebundenes Javascript kann ja keine aktuellen Meldungen enthalten.

            Mit Ajax kann der Webmaster nichts von einem (meinem) fremden Server holen, also ist es logisch, dass er auch keine .js Datei mit aktuellen Inhalten vom fremden Server holen darf.

            Habe das aber noch nicht ausprobiert.

            Gruß, Frank

            1. Mit Ajax kann der Webmaster nichts von einem (meinem) fremden Server holen, also ist es logisch, dass er auch keine .js Datei mit aktuellen Inhalten vom fremden Server holen darf.

              Webmaster = Browser

            2. Hi,

              Ein eingebundenes Javascript kann ja keine aktuellen Meldungen enthalten.

              Natürlich kann es.

              Mit Ajax kann der Webmaster nichts von einem (meinem) fremden Server holen, also ist es logisch, dass er auch keine .js Datei mit aktuellen Inhalten vom fremden Server holen darf.

              Du stellst Zusammenhänge her, wo keine existieren.

              Natürlich kann der Client eine JavaScript-Ressource von http://sonstwo.example.com/ anfordern, wenn die Adresse im src-Attribut eines Script-Elementes dorthin verweist.

              MfG ChrisB

              --
              RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      3. Hi,
        ich habe vor Jahren mal sowas gemacht. Mein "Saver", ein Modul für ein Programm namens "Grabber", konnte Webseiten speichern und alle lokalen Verweise auf Resourcen aufgespüren und an eine andere Domäne angepassen bzw. umgeschreiben. Soviel Arbeit war das gar nicht. Nicht korrektes HTML ging halt oft nicht, das war auch der Nachteil, warum der Einsatz als Web-Bot nicht immer von Erfolg gekrönt war. Grabber konnte nämlich wesentlich mehr, als nur als Proxy zu fungieren. Ach, schön war die Zeit

  2. Moin!

    ich möchte einen Service anbieten, dass Webmaster eine HTML- Datei mit Platzhaltern versehen, mein Programm die HTML- Datei liest, die Platzhalter füllt und wieder ausgibt.

    Schön. Wenn die von Deiner Software abgerufene Seite virulenten Mist oder merkwürdige Aussagen wie "Bombt das Kanzleramt in Schutt und Asche!" enthält, dann schickt Dein Server das wieder raus und bist der, bei dem der Staatsschutz auftaucht und nach Bomben sucht - und natürlich neben Deiner kompletten Elektronik (Bildschirme, Drucker, MP3-Player, Küchenradio, Scanner, Computer, Cellphone...) den Server beschlagnahmt.

    Wie geht das? Oder wie könnte man das Problem sonst angehen?

    Du stellt die Daten zur Verfügung und eine Beschreibung, wie die Kunden Deines Projektes diese abholen und selbst mit Javascript/PHP/PERL,Pyton,VBS,... einbauen. Das nennen viele dann "API".

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix