Bernhard Peissl: (PERL/SSI) Script erst nach dem Laden der Seite aufrufen?

Hi !

Mich würde interessieren, ob es geht, ein CGI-Script über SSI aufzurufen, allerdings erst nach dem vollständigen Seitenaufbau!

Es geht darum, die Benutzer ein wenig "auszuspionieren". Ich würde gerne wissen aus welchem Land ein Besucher kommt(geht das überhaupt?wie?), Counter, Browserversionen, ... und das alles mit PERL in einem file ablegen.

Allerdings hätte ich gerne, dass zuerst die Seite vollständig geladen wird, und dann erst im Hintergrund das Script die Daten ermittelt und ablegt, damit sich nicht der Scriptaufruf an der Ladezeit zu schaffen macht!

Wie wird also eine *.shtml abgearbeitet? Geht es wenn ich es einfach hinter das </body> schreibe? Ungefähr so:

</body>
<!--#exec cgi="abc.pl"-->
</html>

Wird das Zeile für Zeile an den Browser geschickt, oder in willkürlicher Reihenfolge? Muss ich ein Timeout machen? Geht das überhaupt?

Liebe Grüsse
Bernhard

  1. Hi,

    Mich würde interessieren, ob es geht, ein CGI-Script über SSI aufzurufen, allerdings erst nach dem vollständigen Seitenaufbau!

    das Script wird aufgerufen, noch bevor der Server die Seite an den Client zurückschickt. Deswegen heißt es _Server Side_ Includes.

    Ich würde gerne wissen aus welchem Land ein Besucher kommt(geht das überhaupt?wie?),

    Nein, geht nicht.

    Allerdings hätte ich gerne, dass zuerst die Seite vollständig geladen wird, und dann erst im Hintergrund das Script die Daten ermittelt und ablegt,

    Dann benutze <img>.

    damit sich nicht der Scriptaufruf an der Ladezeit zu schaffen macht!

    Das ist bei SSI kaum gegeben, es sei denn, Dein Script ist extrem unperformant.

    Wie wird also eine *.shtml abgearbeitet?

    Der Server parst die Seite auf mögliche SSI-Kommandos, ersetzt diese und liefert anschließend das Ergebnis zurück.

    Geht es wenn ich es einfach hinter das </body> schreibe? Ungefähr so:

    Auch dann ist der Vorgang der selbe.

    Wird das Zeile für Zeile an den Browser geschickt, oder in willkürlicher Reihenfolge?

    Nein, nur komplett.

    Cheatah

    1. Hi,

      Ich würde gerne wissen aus welchem Land ein Besucher kommt
      (geht das überhaupt?wie?),
      Nein, geht nicht.

      Die Chefitäten wollen "soviel wie möglich über die Besucher" wissen. No Na! Aber was ist alles möglich? - und relativ einfach realisierbar: d.h. ohne ein ServerLOG-Auswertungsscript oder ähnlich komplizierten Dingen?

      Allerdings hätte ich gerne, dass zuerst die Seite vollständig geladen wird, und dann erst im Hintergrund das Script die Daten ermittelt und ablegt,

      Dann benutze <img>.

      Ich denke dass du glaubst, dass ich mehr weiss als du denkst ;-)
      Ich versteh nur <bahnhof> - was hat SSI mit einem Image zu tun?

      Das ist bei SSI kaum gegeben, es sei denn, Dein Script ist extrem unperformant.

      Ich mache keine unperformanten scripts ;-) *fg*

      Wieso? Ist doch auch bloss ein Perl-Script, Datei öffnen, reinschreiben, zumachen, wenns eventuell noch geflockt ist, ... kann mir schon vorstellen, dass sich das auswirkt. Wieso ist das bei SSI kaum gegeben? Der Browser muss dann doch warten - so wie du geschrieben hast - bis er vom Server die Seite bekommt. Wenn da aber zu lange am Script gewerkelt wird ... ? Oder bewegt sich das im Bereich der Millesekunden?

      Wie machst z.b. du bei deinem Projekten sowas?

      liebe Grüsse
      Bernhard

      PS: Ich weiss, ziemlich viele Fragen, sorry!

      1. Hallo,

        Die Chefitäten wollen "soviel wie möglich über die Besucher" wissen. No Na! Aber was ist alles möglich? - und relativ einfach realisierbar: d.h. ohne ein ServerLOG-Auswertungsscript oder ähnlich komplizierten Dingen?

        [...]

        Wie machst z.b. du bei deinem Projekten sowas?

        Ich antworte mal eben fuer Cheatah (da er mir das mit dem http://www.cheatah.net ja sowieso krumm nimmt, ist das dann auch egal ;-) ).

        Die guenstigste Variante ist: sucht Euch einen guten Counterservice, da werden dann auch Statistiken nach allem moeglichen gefahren. Das ganze kostet dann im Jahr vielleicht 50 DM - rechne da mal Deinen Stundensatz dagegen... Ich setze das seit Jahren ein - und habe den Gedanken komplett aufgegeben, so was selber zu programmieren. Seit kurzem muss ich leider auch ein paar Mark fuer den Counter bezahlen, aber da es mir hilft, meine Site zu optimieren, ist es mir das wert.

        Tschuess,

        Dirk

        1. Hallo Dirk!

          Ich antworte mal eben fuer Cheatah (da er mir das mit dem http://www.cheatah.net ja sowieso krumm nimmt, ist das dann auch egal ;-) ).

          ???

          Die guenstigste Variante ist: sucht Euch einen guten Counterservice, da werden dann auch Statistiken nach allem moeglichen gefahren. Das ganze kostet dann im Jahr vielleicht 50 DM - rechne da mal Deinen Stundensatz dagegen... Ich setze das seit Jahren ein - und habe den Gedanken komplett aufgegeben, so was selber zu programmieren. Seit kurzem muss ich leider auch ein paar Mark fuer den Counter bezahlen, aber da es mir hilft, meine Site zu optimieren, ist es mir das wert.

          Welchen verwendest du, bzw. was können die/sollten sie für welchen Preis können?

          liebe Grüsse
          Bernhard

          1. Hallo Bernhard

            Welchen verwendest du, bzw. was können die/sollten sie für welchen Preis können?

            Also ich verwende den Gratis counter von:
            http://www.extreme-dm.com/tracking/

            Als Beispiel, damit du siehst was der so alles aufzeichnet:
            [http://z.extreme-dm.com/s/?tag=sonnyr]
            Wenn du ihn verstecken willst kostet es ein bischen was. (5$/Monat)
            Auch nicht versteckt ist es nicht schlimm, da er klein ist.

            MfG
            Roman Sonnleithner alias Sonny
            http://www.atomic-eggs.com/selfspezial/daten/119.html

            1. Hallo Roman

              Also ich verwende den Gratis counter von:
              http://www.extreme-dm.com/tracking/

              Also der hübscheste ist er ja nicht gerade, aber die Statistik schaut recht gut aus. Was ersteres betrifft, kann man ja auch einen weissen Layer drüberlegen ;-) oder? Es ist nämlich eine Firmenseite, also wenns nicht unbedingt sein muss würd ich gern einen "nicht sichtbaren" Counter haben, oder einen, der mir stilmässig irgendwie ins Design passt.

              liebe Grüsse und danke für den Tipp,
              Bernhard

              1. Hi,

                Es ist nämlich eine Firmenseite, also wenns nicht unbedingt sein muss würd ich gern einen "nicht sichtbaren" Counter haben, oder einen, der mir stilmässig irgendwie ins Design passt.

                m!<img\s.*src="([^"]+)".*>!
                print << EOP;
                <script language="JavaScript1.1" type="text/javascript">
                <!--
                var counter = new Image();
                counter.src = $1;
                // -->
                </script>
                EOP

                Ob das mit den Bedingungen konform geht, denen Du mit dem Counter zugestimmt hast, ist dann allerdings noch zu klären. Die einfachere Variante lautet übrigens width=1 height=1 ;-)

                Cheatah

                1. Hallo Cheatah

                  Die einfachere Variante lautet übrigens width=1 height=1 ;-)

                  Hehe, hab ich auch probiert, es aber wieder sein lasse. Will ja nicht, dass die irgendwann auf meiner Seite vorbeischauen und mich verklagen ;-)

                  Außerdem:
                  Da steht wenn man sich anmelden will:

                  Cheatah's Idee:
                  <zitat>
                  The Tracker-code has to be copied into the source of your page INTEGRALLY AND WITHOUT ANY CHANGES.
                  </zitat>

                  Und zu Bernhards und Cheatah's Idee:
                  <zitat>
                  The button connected to the code must be placed in a VISIBLE way on your page and in the size as exposed below.
                  </zitat>

                  Tsja also vorsicht sei geboten!

                  MfG
                  Roman Sonnleithner alias Sonny
                  http://www.atomic-eggs.com/selfspezial/daten/119.html

      2. Hi,

        Die Chefitäten wollen "soviel wie möglich über die Besucher" wissen. No Na! Aber was ist alles möglich?

        es gibt eine Vielzahl an Informationen. Die meisten davon lassen sich aber nur schlecht oder gar nicht interpretieren.

        Beispiel User-Agent:
        Der "Browserstring" wird gerne ausgewertet, obwohl er nur begrenzt etwas aussagt. Erstens überschlagen sich die Browserhersteller mit Strings, die einander möglichst ähnlich sehen, damit sie möglichst schlecht voneinander unterschieden werden können (bestes Beispiel: der MSIE meldet sich als "Mozilla (compatible)"); zweitens reißen sie und einige Proxyentwickler dabei jedes Mal einen neuen Standard auf, der die Auswertung verkompliziert; drittens fälschen genügend User mit sehr fähigen Browsern den User-Agent-String, weil viel zu viele Webmaster (die diesen Namen dann auch nicht verdienen) ihre Seiten von eben diesem String abhängig machen und den Usern von z.B. Lynx Entschuldigungsseiten entgegenschmettern, obwohl gerade diese die Seiten am besten sehen könnten.

        Beispiel Bildschirmauflösung:
        Sie ist praktisch aussagelos. Viele versuchen zwar, davon abhängig auf verschiedene Seiten umzuleiten, aber wieso? Die Bildschirmauflösung sagt nicht, wie groß das Browserfenster ist; sie sagt nicht einmal, wie viel der Bildschirm gerade darstellt - es gibt sowohl Lösungen mit mehreren Monitoren, als auch solche mit mehreren Bildschirmbereichen, von denen nur einer zur Zeit angezeigt wird.

        Beispiel IP-Adresse/Provider-Hostname:
        Zwar kann man wunderbar "xyz.t-online.de" erkennen, aber wer sagt, daß der User nicht gerade aus Brasilien heraus surft? Ich habe viele Logfileeinträge (eigenes System) gefunden, die gerade auf dieses Szenario hindeuten - kann natürlich auch Fehlinterpretation sein. Wie auch immer, "xyz.aol.com" sagt jedenfalls absolut nichts über das Land aus.

        Beispiel navigator.language:
        Alle Versuche, hieraus oder aus ähnlichen Angaben auf die Nationalität zu schließen, sind zum Scheitern verurteilt. Ich bin beispielsweise _nicht_ englisch, obwohl es mein Browser ist. Auch bei konfigurierbaren Angaben erfährt man nicht mehr - was ist mit Internet-Cafés (auf die man gerade im Ausland angewiesen ist, wenn die Spracheinstellungen garantiert nicht stimmen), Uni-Netzwerken (oft überdurchschnittlich hoher Ausländeranteil), Firmen-Netzen (wir haben hier gerade einen Inder (nein, keine Greencard *g*) ins Team bekommen, der kein deutsch spricht)? Oftmals kann man die Systemeinstellungen einfach nicht beeinflussen - was übrigens auch einer der vielen Gründe für die Nutzlosigkeit von mailto-Formularen ist, da die versendete eMail-Adresse nutzlos ist.

        Letztlich ist die Zahl wirklich nutzbarer Informationen ziemlich gering: Zeit und Ort (URL). Das Server-Logfile gibt zudem noch die Information, welches Ergebnis ein Request hatte (Status und Größe in Bytes), und ist weder begrenzt auf HTML-Seiten, noch abhängig von den Systemeinstellungen des Users (z.B. ob Grafiken geladen werden).

        • und relativ einfach realisierbar: d.h. ohne ein ServerLOG-Auswertungsscript oder ähnlich komplizierten Dingen?

        Was ist einfacher als eine gelöste Auswertung eines gelösten Logging-Systems? Du brauchst weder für den Logging-Mechanismus noch für die Auswertung proprietäre Programme zu entwickeln, wenn Du Dich auf bestehende Software verläßt. Zumal der Nutzen eher zweifelhaft wäre.

        Dann benutze <img>.

        »»

        Ich denke dass du glaubst, dass ich mehr weiss als du denkst ;-)
        Ich versteh nur <bahnhof> - was hat SSI mit einem Image zu tun?

        Nichts; aber <img> hat etwas mit Scripts zu tun, weil man über sie welche aufrufen kann - vorausgesetzt, der Benutzer lädt Grafiken.

        Das ist bei SSI kaum gegeben, es sei denn, Dein Script ist extrem unperformant.

        Ich mache keine unperformanten scripts ;-) *fg*

        Dann ist der Aufwand von SSI praktisch nicht meßbar. Während die HTTP-Kommunikation u.U. mehrere Sekunden braucht, ist die SHTML-Seite ratzfatz geparsed.

        Wie machst z.b. du bei deinem Projekten sowas?

        Ich benutze gewöhnlich das, was die maximale Aussagekraft hat: Ein nach meinen Wünschen konfiguriertes Server-Logfile.

        Cheatah

        1. Hallo Cheatah!

          Wow, also erst mal danke für deine wirklich _sehr_ ausfürliche Antwort :-) Schön zu sehen, dass sich hier jemand wirklich noch die Zeit nimmt, so detailliert zu antworten. Gleichzeitig ist auch ein - für mich sehr denkwürdiges - Ereignis eingetroffen: Ich habe keine Fragen mehr !!!! Das ist mir noch nie passiert. Ich hätte nie gedacht, dass mir mal irgendwo die Fragen ausgehen, aber du hast es geschafft :-)

          Beispiel User-Agent:
          Der "Browserstring" wird gerne ausgewertet, obwohl er nur begrenzt etwas aussagt. Erstens überschlagen sich die Browserhersteller mit Strings, die einander möglichst ähnlich sehen, damit sie möglichst schlecht voneinander unterschieden werden können (bestes Beispiel: der MSIE meldet sich als "Mozilla (compatible)");

          Genau das war mir auch schon aufgefallen, und wenn du wüsstest wie ich an dem Grund gerätselt habe. Du bist der erste, der darauf eine Antwort hatte, die sich auch noch recht plausibel anhört ;-)

          Beispiel Bildschirmauflösung:
          Sie ist praktisch aussagelos. Viele versuchen zwar, davon abhängig auf verschiedene Seiten umzuleiten, aber wieso? Die Bildschirmauflösung sagt nicht, wie groß das Browserfenster ist; sie sagt nicht einmal, wie viel der Bildschirm gerade darstellt - es gibt sowohl Lösungen mit mehreren Monitoren, als auch solche mit mehreren Bildschirmbereichen, von denen nur einer zur Zeit angezeigt wird.

          Naja, stimmt schon, aber ich maximiere grundsätzlich jedes Fenster. Weil ich mich nicht wohlfühle, wenn im Hintergrund irgendwas anderes blinkt und tutet! Ausserdem muss man sich ja als Webseiten-Ersteller an irgendwas festmachen. Da nimmt man halt den goldenen Mittelweg!

          Ausserdem Prozentgeschichten (width="xyz%") hauen bei mir irgendwie nicht hin, denn mit irgendeiner Bildschirmgrösse siehts immer scheisse aus :-( (sorry für das böse Wort)

          Beispiel IP-Adresse/Provider-Hostname:
          Wie auch immer, "xyz.aol.com" sagt jedenfalls absolut nichts über das Land aus.

          Genau das habe ich meiner Chefin ja auch gesagt. Allerdings finde ich die REFERRERs schon praktisch - auch Werbetechnisch, aber das ist ja eh ein alter Hut!

          Letztlich ist die Zahl wirklich nutzbarer Informationen ziemlich gering: Zeit und Ort (URL). Das Server-Logfile gibt zudem noch die Information, welches Ergebnis ein Request hatte (Status und Größe in Bytes), und ist weder begrenzt auf HTML-Seiten, noch abhängig von den Systemeinstellungen des Users (z.B. ob Grafiken geladen werden).

          • und relativ einfach realisierbar: d.h. ohne ein ServerLOG-Auswertungsscript oder ähnlich komplizierten Dingen?  
            Was ist einfacher als eine gelöste Auswertung eines gelösten Logging-Systems? Du brauchst weder für den Logging-Mechanismus noch für die Auswertung proprietäre Programme zu entwickeln, wenn Du Dich auf bestehende Software verläßt. Zumal der Nutzen eher zweifelhaft wäre.

          Wofür gibts eigentlich noch nix fertiges?

          Nichts; aber <img> hat etwas mit Scripts zu tun, weil man über sie welche aufrufen kann - vorausgesetzt, der Benutzer lädt Grafiken.

          Baff! Das wusste ich nicht, iss ja voll schräg!

          Ich benutze gewöhnlich das, was die maximale Aussagekraft hat: Ein nach meinen Wünschen konfiguriertes Server-Logfile.

          Du hast es gut, du hast dir schon alle so abgerichtet wie du sie brauchst, hm? Das geht aber nur mit eigenem Webserver oder? <=Doch noch ne Frage :-) - hab ichs mir doch gedacht, es gibt immer was, was ich noch fragen könnte ;-)

          Also, tausend Dank, und fürchtend dass ich das nie wieder alles gut machen kann,
            Bernhard

          PS: Falls ich irgendwo mal ein wenig Content für eine eigene Seite finde, mache ich eine Danke-Gallerie, da kommt ihr dann alle rein!

          • und wenn du so weitermachst, bist du bald ganz oben, nach Stefan natürlich, ohne dessen Werk ich wahrscheinlich jetzt bei 'Tag' immer noch an etwas anderes denken würde ;-)
          1. Hi,

            Wow, also erst mal danke für deine wirklich _sehr_ ausfürliche Antwort :-)

            war mir ein mittelschweres Vergnügen :-)

            Beispiel Bildschirmauflösung:

            Naja, stimmt schon, aber ich maximiere grundsätzlich jedes Fenster.

            Eine beliebte Krankheit bei Homepage-Entwicklern. Aber glaub mir, Deinen Besuchern geht es nicht so.

            Ausserdem Prozentgeschichten (width="xyz%") hauen bei mir irgendwie nicht hin, denn mit irgendeiner Bildschirmgrösse siehts immer scheisse aus :-( (sorry für das böse Wort)

            Für das ungewohnte Auge sehen bestimmte Dinge _immer_ schlecht aus. Wer es aber gewohnt ist, bei 1600x1280 Pixeln im Vollbildmodus zu surfen, dem wird es gefallen. Wem es nicht gefällt, der wird anders surfen.

            Allerdings finde ich die REFERRERs schon praktisch - auch Werbetechnisch, aber das ist ja eh ein alter Hut!

            Meinst Du den HTTP_REFERER? Das ist ein weiteres Beispiel nutzloser Informationen. Dieser Header kann beliebig verändert werden - gefälscht oder gelöscht.

            Wofür gibts eigentlich noch nix fertiges?

            Keine Ahnung. Ich bin Perler, da gibt's für alles schon fertige Module ;-)

            Nichts; aber <img> hat etwas mit Scripts zu tun, weil man über sie welche aufrufen kann - vorausgesetzt, der Benutzer lädt Grafiken.

            Baff! Das wusste ich nicht, iss ja voll schräg!

            Naja, jeder graphische Counter arbeitet so. Und Bannerexchange-Dienste - um mal nur zwei zu nennen.

            Ich benutze gewöhnlich das, was die maximale Aussagekraft hat: Ein nach meinen Wünschen konfiguriertes Server-Logfile.

            Du hast es gut, du hast dir schon alle so abgerichtet wie du sie brauchst, hm?

            Normalerweise reicht ein "gewöhnliches" Logfile. Für bestimmte Dienste ist es hilfreich, eine Variante zu konfigurieren, und dazu...

            Das geht aber nur mit eigenem Webserver oder?

            ...braucht man zumindest die entsprechenden Konfigurationsrechte, also Zugriff auf die httpd.conf.

            <=Doch noch ne Frage :-) - hab ichs mir doch gedacht, es gibt immer was, was ich noch fragen könnte ;-)

            Wär ja auch schade wenn nicht :-)

            Cheatah

            1. Hallo Cheatah!

              Meinst Du den HTTP_REFERER? Das ist ein weiteres Beispiel nutzloser Informationen. Dieser Header kann beliebig verändert werden - gefälscht oder gelöscht.

              Schon mal was von Optimismus gehört? ;-) Wer tut sich denn das an und manipuliert sowas, das machen doch nur Leute, die sich damit _sehr_ gut auskennen, oder irgendwelche bösen Hintergedanken haben. Aber der Durchschnittsuser sollte schon dort herkommen, wo er herzukommen vorgibt. Oder ist im IE irgendein versteckter Schalter wie "dem bösen Site-Statistik-Programm meinen Referrer nicht zeigen" ;-)

              Wofür gibts eigentlich noch nix fertiges?
              Keine Ahnung. Ich bin Perler, da gibt's für alles schon fertige Module ;-)

              und gleich die passenden perldocs dazu - das war übrigens unsere erste Unterhaltung ohne einen Verweis von dir auf o.g. Dokumentation ;-)

              Nichts; aber <img> hat etwas mit Scripts zu tun, weil man über sie welche aufrufen kann - vorausgesetzt, der Benutzer lädt Grafiken.

              Baff! Das wusste ich nicht, iss ja voll schräg!

              Naja, jeder graphische Counter arbeitet so. Und Bannerexchange-Dienste - um mal nur zwei zu nennen.

              Also, ich muss noch viel lernen, d.h. viel fragen, d.h. viel Arbeit fürs Forum!

              Normalerweise reicht ein "gewöhnliches" Logfile. Für bestimmte Dienste ist es hilfreich, eine Variante zu konfigurieren, und dazu...

              Das geht aber nur mit eigenem Webserver oder?

              ...braucht man zumindest die entsprechenden Konfigurationsrechte, also Zugriff auf die httpd.conf.

              Was man bei einem stinknormalen Provider wohl nicht erwarten kann :-(

              <=Doch noch ne Frage :-) - hab ichs mir doch gedacht, es gibt immer was, was ich noch fragen könnte ;-)

              Wär ja auch schade wenn nicht :-)

              Bin schon gespannt, wann du bereuen wirst, diesen Satz geschrieben zu haben :-) - ich werde dich beizeiten erinnern!

              liebe Grüsse
                Bernhard

              1. Hallo Bernhard,

                Schon mal was von Optimismus gehört? ;-) Wer tut sich denn das an und manipuliert sowas, das machen doch nur Leute, die sich damit _sehr_ gut auskennen, oder irgendwelche bösen Hintergedanken haben. Aber der Durchschnittsuser sollte schon dort herkommen, wo er herzukommen vorgibt. Oder ist im IE irgendein versteckter Schalter wie "dem bösen Site-Statistik-Programm meinen Referrer nicht zeigen" ;-)

                "Trau keinem HTTP_.+ und keinem QUERY_STRING". Das sind Daten, welche vom Client kommen, und daher auch nicht zuverlässig sind. Es gibt genauso viele, die da rumspielen, wie es leite gibt, die dir per Email einen Virus anbieten, oder TRojaner versenden usw.

                Ich habe gerade ein "erweitertes" HTTP-Protokoll eingesetzt, um bestimmte Daten für eine Spezialanwendung im HTTP-Request einzubauen.

                Es kann also alles Mögliche daherkommen.

                Grüße
                  Klaus

                1. Hallo Klaus!

                  Ich habe gerade ein "erweitertes" HTTP-Protokoll eingesetzt, um bestimmte Daten für eine Spezialanwendung im HTTP-Request einzubauen.

                  Ihr seid alle voll die Freaks gell? Was macht ihr eigentlich alle? Seid ihr Hacker, Wissenschaftler, oder wie kommt man auf sowas ;-)
                  Eine Spezialanwendung in einen erwiterten HTTP-Request einbauen, mann-o-mann, ich versteh ja nicht mal was du da eigentlich machst, geschweige denn wie das funktioniert!

                  Es kann also alles Mögliche daherkommen.

                  Ich bin ein streng-gläubiger Murphy-Jünger: Ich rechne immer mit dem Schlimmsten!

                  liebe Grüsse
                  Bernhard

                  1. Hi,

                    Ihr seid alle voll die Freaks gell? Was macht ihr eigentlich alle? Seid ihr Hacker, Wissenschaftler, oder wie kommt man auf sowas

                    es gibt zwei naheliegende Personen(kreise), die auf solche Ideen (bzw. eher die dadurch realisierten Anforderungen) kommen: "der Chef" und "der Kunde" ... ;-)

                    mfG - Michael

                    1. Hallo !

                      Ich steig da einfach nicht dahinter! Was hat man davon, diesen String zu manipulieren? Sagt mir mal ein paar Anwendungsmöglichkeiten! Wozu wird er eigentlich benutzt, doch nicht bloss damit ein webmaster feststellen kann mit welchem Browser seine User surfen?

                      (bzw. eher die dadurch realisierten Anforderungen)

                      Die da wären? Wo könnte das von Nutzen sein ... *überleg* ,  *überleg* , ... ich komm einfach nicht drauf :-(

                      liebe Grüsse
                      Bernhard

                      1. Hallo !

                        Ich steig da einfach nicht dahinter! Was hat man davon, diesen String zu manipulieren? Sagt mir mal ein paar Anwendungsmöglichkeiten! Wozu wird er eigentlich benutzt, doch nicht bloss damit ein webmaster feststellen kann mit welchem Browser seine User surfen?

                        Eine Möglichkeit ist, den Server auszutricksen. Wenn der mir Die Seiten partout nicht zeigen will, weil er meint ich habe den falschen Browser, weil ich nicht den "richtigen" UserAgent habe, dann schicke ich ihm halt den richtigen.

                        Und nicht jedes Programm, welches sich Seiten übers Netz holt ist auch wirklich ein Browser. Nimm zum Beispiel Software zum Spiegeln von Seiten, oder Offline-Reader oder Suchmaschinen-Spider. Da gibts eine Menge Gründe dafür.

                        Die da wären? Wo könnte das von Nutzen sein ... *überleg* ,  *überleg* , ... ich komm einfach nicht drauf :-(

                        Ich setze gerne HTTP,CGI und Perl auch für Server-Server Kommunikationen ein, oder überhaupt als, hmm heißt das jetzt Middleware. Ich hab mal eine Möglichkeit gesucht, um zu RMS-Datenbestände übers Netzwerk zu kommen. RMS ist ein "Datenbanksystem" unter VMS. Diese Daten werden über COBOL-Programme bearbeitet. Ist zeimlich heavy, da Netzwerkfunktionalität einzubauen. Also schnell mal einen Webserver hergenommen (Region 6), Perl, und ein bißchen DCL und COBOL Gelumpe, und fertig war die Netzanbindung zur Synchronisation mit einem Oracle bzw SQL-Server 7 System.

                        Akademisch gesehen ist das zwar sicherlich Schwachsinn pur, aber es ging schnell, funktioniert, und die Performance ist nicht das Problem. Das System hat ja die ganze Nacht Zeit.

                        Du kennst sicher den Spruch: "Dumm darst Du ja sein, aber helfen solltest Du Dir können."

                        Bis dann
                          Klaus

                        1. Hi Klaus!

                          Eine Möglichkeit ist, den Server auszutricksen. Wenn der mir Die
                          Seiten partout nicht zeigen will, weil er meint ich habe den
                          falschen Browser, weil ich nicht den "richtigen" UserAgent habe,
                          dann schicke ich ihm halt den richtigen.

                          Bringen tuts aber im Endeffekt nix, oder? Angenommen ich will mir
                          eine Frontpage-Seite ansehen, die von Netscape nichts wissen will,
                          ich surfe aber mit NS und gib aber vor mit IE unterwegs zu sein!
                          Deshalb sieht die Seite doch genauso mies aus !?!?!?

                          Auch das Beispiel mit den Offline-Readern oder Software-Zugriff:
                          Wenn die Daten nicht darauf ausgelegt sind, mit einem Offline-Reader
                          (was auch immer das sein mag) bearbeitet zu werden, wieso sollte man
                          dann was anderes vortäuschen?

                          Übrigens: Spiegeln von Seiten? Das hätt mich schon immer auch mal
                          interessiert wie das geht :-) Aber ich fürchte, schön langsam werden
                          meine Fragen ein wenig, naja, viel ;-)

                          Und nicht jedes Programm, welches sich Seiten übers Netz holt ist
                          auch wirklich ein Browser. Nimm zum Beispiel Software zum
                          Spiegeln von Seiten, oder Offline-Reader oder Suchmaschinen-
                          Spider. Da gibts eine Menge Gründe dafür.

                          Jetzt kommt ein wenig Licht ins Dunkel! Das heisst, man kann das
                          z.b. dazu verwenden, auszukundschaften, wie sich ein Seitenaufrufer
                          (UserAgent) zu erkannen gibt. Und dementsprechend könnte man dann
                          auf die geeignete Seite weiterleiten, z.b. wenn der UserAgent ein
                          Wap-Handy ist auf wml-Seiten, wenn es ein Palmtop ist, auf ... naja,
                          was auch immer die halt lesen und darstellen können ..., oder wenn
                          der Agent ein Netscape-Browser ist, eben auf eine nett-gestaltete
                          Error-page ;-)

                          Dein Beispiel ist mir doch ein wenig zu abstrakt. Ich kann mir
                          nämlich nicht bildlich vorstellen, wie ein Programm mit einem Server
                          kommuniziert, ich weiss ich weiss, eigentlich studiere ich das ja,
                          aber das sind so die Dinge, die man nicht lernt. Ich kann zwar
                          wunderschöne Automaten und Turingmaschinen zeichnen, aber so banale
                          Sachen wie: "Wie schicke ich dem Server konkret meine Daten, in
                          welcher Form kommen sie an, ..." lernt man irgendwie nicht, oder
                          vielleicht erst später :-( Die Praxis fehlt einfach!

                          Ich setze gerne HTTP,CGI und Perl auch für Server-Server
                          Kommunikationen ein, oder überhaupt als, hmm heißt das jetzt
                          Middleware. Ich hab mal eine Möglichkeit gesucht, um zu RMS-
                          Datenbestände übers Netzwerk zu kommen. [...]

                          Obwohl's mich in den Fingern juckt, aber da frage ich besser mal
                          nicht nach, sonst sitzen wir noch lange hier!

                          liebe Grüsse
                          Bernhard

                          1. Hallo Bernhard

                            Deshalb sieht die Seite doch genauso mies aus !?!?!?

                            Aber wenigsten kann ich sie lesen.

                            Wenn die Daten nicht darauf ausgelegt sind, mit einem Offline-Reader
                            (was auch immer das sein mag) bearbeitet zu werden, wieso sollte man
                            dann was anderes vortäuschen?

                            s.o.

                            Übrigens: Spiegeln von Seiten? Das hätt mich schon immer auch mal
                            interessiert wie das geht :-) Aber ich fürchte, schön langsam werden
                            meine Fragen ein wenig, naja, viel ;-)

                            Ganz einfach, Du schreibst eine Software, die für dich eine Seite vom Netz runterholt und lokal speichert. Dann kannst Du Die Software auch noch erweitern, daß sie die Datei, fall es eine HTML-Datei ist, analysiert und alle Links und img-Tags usw. auswertet, und diese wieder vom NEtz runterlädt. Das ganze natürlich rekursiv. Und wenn Du nicht aufpasst hast Du das ganze Internet auf Deiner Platte ;-)
                            Beispiel: lwp-mirror aus der libwww von perl, oder wget

                            Und Suchmaschinen Arbeiten auch nicht viel anders, Sie interessieren sich halt nicht für BInär-Daten, Analysieren dafür die Texte genauer.

                            Jetzt kommt ein wenig Licht ins Dunkel! [..] der Agent ein Netscape-Browser ist, eben auf eine nett-gestaltete Error-page ;-)

                            Aber nur, wenn ich nicht vorgaukle, daß ich einen IE habe ;-)

                            Dein Beispiel ist mir doch ein wenig zu abstrakt. Ich kann mir
                            nämlich nicht bildlich vorstellen, wie ein Programm mit einem Server
                            kommuniziert, [...]

                            Steht alles in ftp://ftp.isi.edu/in-notes/rfc2616.txt (zumindest was das HTTP-Protokoll anbelangt)

                            "Web Client Programming with Perl" ist übrigens ein brauchbares Buch zu diesem Thema, da es auch einiges an theoretischen Grundlagen enthält, wenn auch einige der Beispiele inzwischen durch bessere Module überholt wirken.

                            Der Rest der coolen Gang ist über ftp://ftp.isi.edu/in-notes/ zu finden. Viel Spaß beim Lesen, und wenn Du fertig bist, melde Dich wieder, so in ein, zwei Monaten, es sind ja nur 2984 Dateien :-))
                            (Ok. einige sind ja inzwischen obsolet)

                            [...] Ich kann zwar
                            wunderschöne Automaten und Turingmaschinen zeichnen [...]

                            Ja ja, die Akademiker. *seufz*.
                            Übrigens wie ist es mit deiner "aabac und nicht cabcc"-Geschichte ausgegangen?

                            Grüße
                              Klaus

                            1. Hi Klaus!

                              Deshalb sieht die Seite doch genauso mies aus !?!?!?
                              Aber wenigsten kann ich sie lesen.

                              Naja, wo du Recht hast Hast du Recht!

                              Ganz einfach, Du schreibst eine Software, die für dich eine Seite
                              vom Netz runterholt und lokal speichert. Dann kannst Du Die
                              Software auch noch erweitern, daß sie die Datei, fall es eine
                              HTML-Datei ist, analysiert und alle Links und img-Tags usw.
                              auswertet, und diese wieder vom NEtz runterlädt. Das ganze
                              natürlich rekursiv.

                              Was meinst du mit Rekursiv? In regelmässigen Abständen? Denn wenn
                              sich jetzt mal eine Seite verändert, ist sie im "Spiegel" ja noch
                              nicht automatisch vorhanden!

                              Beispiel: lwp-mirror aus der libwww von perl, oder wget

                              Hilfe, ich brauche eindeutig mehr Zeit! Ich muss mir soviel ansehen!
                              Ahhhh! Error: Stack Overflow!  Ahhhhh!!!!! Hilfe, ich stürze
                              ab "Bitte legen sie die Diskette mit der Aufschrift: 'Zeit2000 -
                              RescueDisk 1' ein" *grübel* *grübel* "Sorry, nicht genügend
                              Arbeitsspeicher" AAhhhhhhh "Engine will exec auto-shutdown in 20
                              sec. 20, 19, 18, " Hilfeeeee "3, 2, 1, 0 - Engine successfully shut
                              down!" AAAhhhhhh .....

                              ;-(

                              Steht alles in ftp://ftp.isi.edu/in-notes/rfc2616.txt
                              (zumindest was das HTTP-Protokoll anbelangt)

                              Alleine für die brauch ich ja schon drei Monate!

                              "Web Client Programming with Perl" ist übrigens ein brauchbares
                              Buch zu diesem Thema, da es auch einiges an theoretischen
                              Grundlagen enthält, wenn auch einige der Beispiele inzwischen
                              durch bessere Module überholt wirken.

                              Wie gesagt, ich hebe mir alle Threads auf, d.h. diese Tipps werden
                              alle archiviert auf meinem Rechner. Leider gibt es derzeit soviele
                              Dinge, die ich lesen sollte :-( Ich bin mittlerweile schon zu einem
                              regelrechten "Browser" mutiert, ich fliege nur noch über Texte
                              drüber, such mir im Inhaltsverzeichnis die stellen die ich brauche
                              raus, spring hin, suche grob nach bestimmten keywords, und
                              konzentrier mich dann auf die wichtigen Passagen, gelesen, kurz
                              nachgedacht ob sich mein Problem dadurch lösen lässt, und schon die
                              nächste Quelle in der Hand bzw. auf dem Schirm. Ich mach
                              mittlerweile schon nur noch Informationsaufnahme. Manche Lebewesen
                              atmen Luft ein, ich sauge Daten auf, und hoffe dass mein
                              Stoffwechsel damit was anfangen kann, und den richtigen Outout
                              erzeugt ;-)

                              Übrigens wie ist es mit deiner "aabac und nicht cabcc"-Geschichte
                              ausgegangen?

                              Ich habe meinen Prof per mail angeschrieben, und der hat mir auch
                              die Antwort geschrieben, aber ich hab irgendwie Angst, es zu
                              veröffentlichen, denn dann kommt raus, dass ich mich ordentlich
                              blamiert habe, denn es hat alles gestimmt, der Prof. hat's sogar
                              noch weit primitiver ausgedrückt, der hat wirklich ein Element nach
                              dem anderen aufgezählt: (abacabcbc)* Und jetzt fürchte ich mich
                              vor den blauen Augen ;-) Ausserdem weiss ich auch nicht, inwieweit
                              das hier auch noch jemanden interessiert, und ob es sich
                              infolgedessen auszahlt, einen neuen Thread aufzumachen!

                              Liebe Grüsse
                                Bernhard

                              1. Hi,

                                auswertet, und diese wieder vom NEtz runterlädt. Das ganze
                                natürlich rekursiv.
                                Was meinst du mit Rekursiv?

                                Jeder Link zeigt selbst wiederum auf eine Web-Seite. Wie mit dieser zu verfahren ist, weißt Du bereits: Genau so wie mit der ersten. *Das* ist Rekursion.

                                In regelmässigen Abständen? Denn wenn sich jetzt mal
                                eine Seite verändert, ist sie im "Spiegel" ja noch
                                nicht automatisch vorhanden!

                                Das auch - aber das ist ein anderes Problem.

                                Wenn Du einen Spiegel führst, den Du mit dem Original abgestimmt hast, dann sollte das Original sicherstellen, daß bei jeder Änderung eine bestimmte (Dir bekannte) Seite auf jeden Fall mit geändert wird. Dann brauchst Du nur periodisch diese bekannte Seite abfragen, und wenn sich die geändert hat, spiegelst Du neu. (Noch besser wäre es, wenn diese spezielle Seite eine Liste aller geänderten Dokumente enthält, dann mußt Du nur diese holen und nicht alle unveränderten ebenfalls.)

                                Steht alles in ftp://ftp.isi.edu/in-notes/rfc2616.txt
                                (zumindest was das HTTP-Protokoll anbelangt)
                                Alleine für die brauch ich ja schon drei Monate!

                                Du mußt sie ja nicht auswendig lernen. Bloß das Prinzip verstehen. Und *das* lernst Du auf der Uni ...

                                mfG - Michael

                                1. Hallo Michael!

                                  Jeder Link zeigt selbst wiederum auf eine Web-Seite. Wie mit
                                  dieser zu verfahren ist, weißt Du bereits: Genau so wie mit der
                                  ersten. *Das* ist Rekursion.

                                  Was Rekursion ist, wusste ich ja, nur konnte ich mir in diesem
                                  Kontext einfach keinen Reim drauf machen ;-) Also danke für deine
                                  Auflärung! Heisst also: z.b: Startseite runterladen, und jedem Link
                                  folgen, wieder einen Link entdecken und folgen, IMG finden
                                  runterladen, ... und somit ensteht eine schöne grosse Baum-
                                  Darstellung der Seite.

                                  Du mußt sie ja nicht auswendig lernen. Bloß das Prinzip
                                  verstehen. Und *das* lernst Du auf der Uni ...

                                  Das ist es ja, was ich meinte, wir werden mit Konzepten angefüllt
                                  bis oben hin, aber wenn ich dann vor einem Problem stehe, muss ich
                                  immer erst hierher kommen, und mir Anregungen holen, weil ich eben
                                  nicht weiss, wie ich diese Konzepte anwenden soll :-( - Ist doch
                                  auch irgendwie blöd oder?

                                  Ich meine ich weiss es zu schätzen was ich auf der Uni gelehrt
                                  bekomme, aber es bleibt im Studienplan einfach zu wenig Zeit für die
                                  Praxis. Das wird von uns erwartet, dass wir das ohnehin lernen, wenn
                                  wir mal unser Diplom haben und auf die Marktwirtschaft losgelassen
                                  werden, und dass wir uns dass dann eh leichter erlernen, da wir ja
                                  die Hintergründe schon im Studium begriffen haben. Dass das
                                  Begreifen allerdings nicht ohne Praxis funktioniert, scheint
                                  niemanden zu interessieren. Ausserdem wird ja erwartet, dass man
                                  bereits Erfahrung aufweisen kann, wenn man einen Job haben will.

                                  Ich hatte das bereits am eigenen Leib verspürt: Als ich nämlich
                                  meinen jetzigen Job antrat, hatte ich auch das Prinzip das hinter
                                  HTML steckt, begriffen, aber tortzdem hat's mich ordentlich
                                  gestrauchelt, weil ich von dem ganzen drumherum einfach Null Ahnung
                                  hatte. Und dann immer gleich die Fragen: "Geht das ...", "Kann man
                                  das bei uns auch machen ...", "Eine Suchmaschine brauchen wir
                                  natürlich auch, ..." , etc. und ich hatte noch mit Problemen zu
                                  kämpfen wie: "Wie bekomme ich den Rand bei einem Link weg?" :-(

                                  Erst langsam bekomme ich das in den Griff, aber ich sitze ja auch
                                  Tag und Nacht dabei - Wie man an meine Posting-frequenz ablesen
                                  kann ;-)

                                  Sorry für diesen weinseligen Beitrag, aber von Zeit zu Zeit muss das
                                  einfach mal raus, und gerade jetzt ist wieder so ein kleiner
                                  Tiefpunkt erreicht bei mir :-(

                                  liebe Grüsse
                                  Bernhard

                                  1. Hi,

                                    Du mußt sie ja nicht auswendig lernen. Bloß das Prinzip
                                    verstehen. Und *das* lernst Du auf der Uni ...
                                    Das ist es ja, was ich meinte, wir werden mit Konzepten angefüllt
                                    bis oben hin, aber wenn ich dann vor einem Problem stehe, muss ich
                                    immer erst hierher kommen, und mir Anregungen holen, weil ich eben
                                    nicht weiss, wie ich diese Konzepte anwenden soll :-( - Ist doch
                                    auch irgendwie blöd oder?

                                    Berufserfahrung lernst Du nicht auf der Uni. ;-)

                                    Aber als ich meinen ersten Job angenommen hatte, hatte ich ein Programmierpraktikum, eine Seminararbeit (5 Monate) und eine Diplomarbeit (8 Monate) hinter mir, und das waren alles Programmierprojekte.

                                    Mein erster Job war in einem Rechenzentrum, und da lernte ich dann arbeiten (Projektplanung, Teamarbeit, Dokumentation, Verantwortung übernehmen und solches Zeug).
                                    Erfreulicherweise war das ebenfalls noch an der Uni - in die Industrie bin ich erst fünf Jahre später 'geworfen' worden.

                                    Praxis. Das wird von uns erwartet, dass wir das ohnehin lernen, wenn
                                    wir mal unser Diplom haben und auf die Marktwirtschaft losgelassen
                                    werden, und dass wir uns dass dann eh leichter erlernen, da wir ja
                                    die Hintergründe schon im Studium begriffen haben.

                                    Von vernünftigen Arbeitgebern nicht. ;-)
                                    Und zu anderen mußt Du ja nicht gehen, wenn die Nachfrage so groß ist wie derzeit.

                                    Dass das Begreifen allerdings nicht ohne Praxis funktioniert, scheint
                                    niemanden zu interessieren. Ausserdem wird ja erwartet, dass man
                                    bereits Erfahrung aufweisen kann, wenn man einen Job haben will.

                                    Nicht in IT. Die nehmen jeden, der denken kann. ;-)))

                                    Ich hatte das bereits am eigenen Leib verspürt: Als ich nämlich
                                    meinen jetzigen Job antrat, hatte ich auch das Prinzip das hinter
                                    HTML steckt, begriffen, aber tortzdem hat's mich ordentlich
                                    gestrauchelt, weil ich von dem ganzen drumherum einfach Null Ahnung
                                    hatte. Und dann immer gleich die Fragen: "Geht das ...", "Kann man
                                    das bei uns auch machen ...", "Eine Suchmaschine brauchen wir
                                    natürlich auch, ..." , etc. und ich hatte noch mit Problemen zu
                                    kämpfen wie: "Wie bekomme ich den Rand bei einem Link weg?" :-(

                                    Das erste, was Du lernen muß, ist, daß es wichtige und weniger wichtige Fragen gibt.
                                    Das zweite ist, weniger wichtige Fragen zu delegieren. ;-)

                                    Sorry für diesen weinseligen Beitrag, aber von Zeit zu Zeit muss das
                                    einfach mal raus, und gerade jetzt ist wieder so ein kleiner
                                    Tiefpunkt erreicht bei mir :-(

                                    Nicht klagen. Du hast schon das Richtige gelernt ... ;-)

                                    mfG - Michael (Dipl.-Inform.)

                                    1. Hallo Michael!

                                      Berufserfahrung lernst Du nicht auf der Uni. ;-)

                                      Leider, und ich bin auch wahnsinnig froh über meine Tätigkeit für
                                      die Firma. Erstens kann ich mich da voll austoben: Es gibt eine
                                      irrsinnig riesige Datenbank (so ein Monster von Datenbank hab ich in
                                      keinem einzigen Uni-Skriptum gefunden ;-), Internet-Auftritt so gut
                                      wie nicht vorhanden, ... und ich bin der einzige, der wenigstens ein
                                      bissl Ahnung hat ;-) Wenn ich wirklich alle Stunden aufschreiben
                                      würde, die ich Arbeite, käme wahrscheinlich ein Fünftel meines
                                      Stundenlohnes raus, aber ich sehe eben die Vorteile die ich
                                      gegenüber meinen Studienkollegen habe, und darüber bin ich froh :-))

                                      Mein erster Job war in einem Rechenzentrum, und da lernte ich
                                      dann arbeiten (Projektplanung, Teamarbeit, Dokumentation,
                                      Verantwortung übernehmen und solches Zeug).

                                      Ach verdammt, genau sowas denke ich eben, dass ich auch mal
                                      bräuchte. Mit Autodidaktik bleibt zwar das meiste hängen, aber es
                                      dauert auch lang :-( Ohne dieses Forum könnte ich mir das
                                      mittlerweile auch fast nicht mehr vorstellen. Wenn ich zurückdenke,
                                      wielange ich gesucht habe, bis ich gewusst habe wie man einen
                                      onMouseOver-Image-Wechsel hinkriegt, ich sags dir, es ist eine Menge
                                      Schweiss meine Stirn runtergeflossen, und dann komm ich hierher, und
                                      sehe wie die Probleme, die mir schlaflose Nächte bereitet haben,
                                      hier ungefähr 2 mal pro Woche beantwortet werden, so als wärs das
                                      primitivste vom Primitiven!

                                      hic situs sum! und da bleibe ich auch :-)

                                      Von vernünftigen Arbeitgebern nicht. ;-)
                                      Und zu anderen mußt Du ja nicht gehen, wenn die Nachfrage so groß
                                      ist wie derzeit.

                                      Wieso steht dann in den Stellenanzeigen immer man solle langjährige
                                      Erfahrung mit 3.000 Programmiersprachen gesammelt haben?

                                      Nicht in IT. Die nehmen jeden, der denken kann. ;-)))

                                      Schön, vielleicht bin ja ich auch bald mal darunter :-)

                                      Das erste, was Du lernen muß, ist, daß es wichtige und weniger
                                      wichtige Fragen gibt.

                                      Ja, mittlerweile tu ich mir ja auch schon ein bissl leichter,

                                      Das zweite ist, weniger wichtige Fragen zu delegieren. ;-)

                                      Scherzkeks, du bist gut, an wen denn? An unsere Sekretärin? Ich bin ja der einzige der weiss was HTML ist ;-)

                                      Sorry für diesen weinseligen Beitrag, aber von Zeit zu Zeit muss das
                                      einfach mal raus, und gerade jetzt ist wieder so ein kleiner
                                      Tiefpunkt erreicht bei mir :-(

                                      Nicht klagen. Du hast schon das Richtige gelernt ... ;-)

                                      Ich bin ja gerade erst am Lernen, und das zieht sich mittlerweile durchs Arbeiten immer mehr in die Länge! Ich sitz lieber an der Homepage als vor den Büchern. Ich fürchte ich habe ein kleines Motivationsproblemchen :-(

                                      Aber ich will euch hier nicht zujammern, denn nicht nicht nur Zeit sondern auch Speicherplatz is money, daher ...

                                      Liebe Grüsse
                                        Bernhard

                          2. Hallo Bernhard ;-)

                            Auch das Beispiel mit den Offline-Readern oder Software-Zugriff:
                            Wenn die Daten nicht darauf ausgelegt sind, mit einem Offline-Reader
                            (was auch immer das sein mag) bearbeitet zu werden, wieso sollte man
                            dann was anderes vortäuschen?

                            Och, da gibts nette Anwendungsfaelle ;-) Bei meinem ScreenSurfer aendere ich zum Beispiel etwas den User Agent - da wird dann nicht nur mitgeschickt, dass man zB den Internet Explorer 5.5 benutzt, sondern dass die Webseite jetzt von einem IE 5.5 mit ScreenSurfer aufgerufen wurde.

                            Warum? Damit koennen Webmaster herausfinden, wie viele zusaetzliche Zugriffe die Kooperation mit meiner Site gebracht hat, ob ihre Site also im Bildschirmschoner angezeigt wird. Und zusaetzlich hat's einen anderen netten Werbeeffekt: Du findest heraus, dass ein User zweimal am Tag auf Deine Site kommt - mit schoenster Regelmaessigkeit. Und dann entdeckst Du, dass der merkwuerdigerweise im User Agent was von ScreenSurfer.de stehen hat - und wenn ich ganz viel Glueck habe, kommt er dann vorbei und will auch seine anderen Besucher dazu bringen, mein Tool einzusetzen - um wieder mehr Hits zu bekommen...

                            Klar: der User Agent ist nicht dafuer gemacht - aber er wird halt dafuer missbraucht. Ich habe schon User im Log gehabt, die angeblich die ungewoehnlichsten Browser benutzt haben (Kleinweich Internetz Exploder war da noch das harmloseste...) - ausserdem konnten sie frei bestimmen, was als Referrer angegeben wurde: Du suchst als Webmaster, woher die Hits kommen - und schon freut sich der Webmaster in Japan ueber mehr Hits ;-)

                            Aber: die meisten Benutzer machen das nicht - die Frage ist immer, wofuer Du die Auswertungen brauchst! Und um gerauszufinden, woher ploetzlich die tausend Hits heute morgen kommen (natuerlich von http://www.teamone.de/selfaktuell/forum/messages/118854.html ;-) ), welche Browser ganz grob verwendet werden oder ob die User wirklich alle Seiten Deiner Site frequentieren, reicht ein Counter / Loganalyser schon recht weit.

                            Obwohl's mich in den Fingern juckt, aber da frage ich besser mal
                            nicht nach, sonst sitzen wir noch lange hier!

                            Naja, viel laenger kann kaum noch, oder? Du duerftest heute ganz schoen viel Input bekommen haben ;-) Viel Spass und Erfolg bei der Umsetzung,

                            Dirk

                            1. Hi Dirk!

                              Och, da gibts nette Anwendungsfaelle ;-) Bei meinem ScreenSurfer
                              aendere ich zum Beispiel etwas den User Agent - da wird dann
                              nicht nur mitgeschickt, dass man zB den Internet Explorer 5.5
                              benutzt, sondern dass die Webseite jetzt von einem IE 5.5 mit
                              ScreenSurfer aufgerufen wurde.

                              Die trübe Suppe wird langsam zu einer schönen klaren Nudelsuppe :-)

                              Nach dem gleichen Prinzip könnte das mit den Bannern dann doch auch funktionieren oder? *g* Mal angenommen ich setzte eins deiner Banner auf meine Seite, dann könntest du daran erkennen, dass dir ein Link auf meiner Seite diesen Besucher beschert hat oder? Vorausgesetzt natürlich ich vertraue dir soweit, dass du nicht hinter meinem Rücken die Daten runterschraubst ;-)

                              Und zusaetzlich hat's einen anderen netten Werbeeffekt: Du
                              findest heraus, dass ein User zweimal am Tag auf Deine Site
                              kommt - mit schoenster Regelmaessigkeit.

                              Wieso, du hast doch nur in den Header geschrieben, dass der User mit einem Sreensurfer unterwegs ist, ausserdem könnte er ja auch schon dreimal am Tag dagewesen sein, oder wie hälstdu fest wie oft jemand da war, geht doch mit cookies irgendwie einfacher oder ;-)

                              • ausserdem konnten sie frei bestimmen, was als Referrer angegeben
                                wurde: Du suchst als Webmaster, woher die Hits kommen - und schon
                                freut sich der Webmaster in Japan ueber mehr Hits ;-)

                              Ach daher wehte der Wind, dass man seine eigene Seite als Referrer eingibt, in der Hoffnung, dass der Webmaster, der das Zeugs dann auswertet, so neugierig ist, und sich die Seite unbedingt auch mal ansehen muss! naja, ... Aber wie kann ich jetzt wenn ich stinknormal herumsurfe meinen HTTP-Header ändern. Wie Cheatah gesagt hat mit Proxies, oder auch ohne?

                              Aber: die meisten Benutzer machen das nicht - die Frage ist
                              immer, wofuer Du die Auswertungen brauchst! Und um
                              gerauszufinden, woher ploetzlich die tausend Hits heute morgen
                              kommen (natuerlich von http://www.teamone.de/selfaktuell/forum/messages/118854.html ;-) )

                              sorry, aber ich glaube ich habe den Witz nicht ganz gecheckt :-(

                              Obwohl's mich in den Fingern juckt, aber da frage ich besser
                              mal nicht nach, sonst sitzen wir noch lange hier!

                              Naja, viel laenger kann kaum noch, oder? Du duerftest heute ganz
                              schoen viel Input bekommen haben ;-) Viel Spass und Erfolg bei
                              der Umsetzung,

                              Ich freu mich ja auch wie ein kleines Kind, aber wie die nunmal sind, schreien sie immer auch "Mama, will mehr" ;-)

                              Nein ernsthaft: Ich weiss, dass ich hier viel - und auch qualitativ hochwertiges - Feeadback erhalten habe, das freut mich natürlich über alle Maßen, da ich mir das alles ansonsten mühsam irgendwo aus den Fingern (und diversen Suchmaschinen) in nächtelanger Arbeit heraussuchen hätte müssen. Daher mal ein herzliches Danke an alle die mir schon oft solch informative Threads geschenkt haben.  Ich speichere mir die auch immer gleich ab, sobald sie ins Archiv kommen :-) Ich schau sie mir also auch zuhause öfters an. Einen eigenen LOB-thread will ich gleich auch nicht aufmachen, aber ihr sollt schon auch mal wissen, dass ich euch irre-dankbar bin.

                              Der langen Rede kurzer Sinn: Schön, dass ihr mir so hilfreich unter die Arme greift :-) Und wie gesagt, hoffentlich kann ich mich da auch irgendwann mal irgendwie revanchieren!

                              liebe Grüsse
                              Bernhard

                      2. Hi,

                        Ich steig da einfach nicht dahinter! Was hat man davon, diesen String zu manipulieren?

                        niemand hat behauptet, daß ausgerechnet die beiden genannten Personenkreise dafür bekannt wären, *sinnvolle* Anforderunge zu stellen. ;-)

                        mfG - Michael

              2. Hi,

                Meinst Du den HTTP_REFERER? Das ist ein weiteres Beispiel nutzloser Informationen. Dieser Header kann beliebig verändert werden - gefälscht oder gelöscht.

                Schon mal was von Optimismus gehört? ;-)

                kann man das essen? ;-)

                Wer tut sich denn das an und manipuliert sowas, das machen doch nur Leute, die sich damit _sehr_ gut auskennen, oder irgendwelche bösen Hintergedanken haben. Aber der Durchschnittsuser sollte schon dort herkommen, wo er herzukommen vorgibt.

                Den HTTP_REFERER verändern insbesondere Firewalls und Proxies. Zur Erinnerung: Der WebWasher, ein auch unter "einfachen Usern" sehr beliebtes Programm, ist ein Proxy. Ob es speziell dort eine Option zum Überschreiben des Referers gibt weiß ich nicht, ich kann es mir aber sehr gut vorstellen. So was ist verflucht simpel zu implementieren, wenn man schon mal einen Proxy schreibt.

                Oder ist im IE irgendein versteckter Schalter wie "dem bösen Site-Statistik-Programm meinen Referrer nicht zeigen" ;-)

                Interessanter ist "dem Statistik-Freak meine eigene Homepage als Referer vorgaukeln, auf daß er mir 'nen weiteren Visit liefert".

                und gleich die passenden perldocs dazu - das war übrigens unsere erste Unterhaltung ohne einen Verweis von dir auf o.g. Dokumentation ;-)

                Siehe perldoc LWP::UserAgent, denn damit kann man Referer erzeugen ;-)

                Also, ich muss noch viel lernen, d.h. viel fragen, d.h. viel Arbeit fürs Forum!

                Ich verlange schon mal 'ne Gehaltserhöhung auf das Doppelte *g*

                ...braucht man zumindest die entsprechenden Konfigurationsrechte, also Zugriff auf die httpd.conf.

                Was man bei einem stinknormalen Provider wohl nicht erwarten kann :-(

                Stimmt wohl. Gute Provider lassen aber mit sich reden und richten zumindest selbst Deinen Wunsch-Logstring ein. Ggf. funktioniert dann das Auswertungstool nicht mehr.

                Wär ja auch schade wenn nicht :-)

                »»

                Bin schon gespannt, wann du bereuen wirst, diesen Satz geschrieben zu haben :-)

                Warum? Ich verweise Dich doch gerne auf die Doku ;-)

                Cheatah

                1. Halli Hallöchen!

                  Da hat sich ja noch wer zu Wort gemeldet, ich hätt' dein Posting ja fast übersehen ;-) *schlagmichgeradeselbst*

                  Schon mal was von Optimismus gehört? ;-)
                  kann man das essen? ;-)

                  Gibts gerade im Sonderangebot bei Aldi: 5 Liter Optimismus + 20 Gramm Zuneigung für nur DM 12,49 - Solange der Vorrat reicht! ;-)

                  Den HTTP_REFERER verändern insbesondere Firewalls und Proxies.
                  Zur Erinnerung: Der WebWasher, ein auch unter "einfachen Usern"
                  sehr beliebtes Programm, ist ein Proxy. Ob es speziell dort eine
                  Option zum Überschreiben des Referers gibt weiß ich nicht, ich
                  kann es mir aber sehr gut vorstellen. So was ist verflucht simpel
                  zu implementieren, wenn man schon mal einen Proxy schreibt.

                  Es gibt doch sicher irgendwo eine Seite, oder eine Funktion (z.b. in Perl) mit der man sich einmal seinen eigenen HTTP_REFERRER und den ganzen anderen request-response-Kram ansehen kann? Hab da mal was von einer Umgebungsvariablen gelesen! Ausserdem würd mich dann interessieren, wie so ein veränderter REFERRER bzw. header dann aussieht von einem wie dem der o.g. Proxies, oder von denen die ihr da so manipuliert (siehe Klaus' Posting).

                  Interessanter ist "dem Statistik-Freak meine eigene Homepage als
                  Referer vorgaukeln, auf daß er mir 'nen weiteren Visit liefert".

                  Wieso liefert er dir dann einen Visit ??? Da wird doch nur ausgelesen wo der User herkommt?
                  Sind das also doch im Grunde nur Spielereien, oder gibt's dafür auch handfeste Anwendungen?

                  Siehe perldoc LWP::UserAgent, denn damit kann man Referer erzeugen ;-)

                  Damit du siehst dass deine perldoc-links nicht zu Schall und Rauch werden ;-) hier mal ein Ausschnit (Das Example von lib/lwp):

                  //  $ua = new LWP::UserAgent;
                  //  $ua->agent("AgentName/0.1 " . $ua->agent);

                  Wie soll das gehen? einmal ist 'agent' eine Funktion und einmal eine Variable oder wie soll man das interpretieren? Und v.a. ist $ua->agent dann der besagte Browser-String (Internet-Explorer 5.0 (Mozilla 4.irgendwas ...))?

                  //  my $req = new HTTP::Request POST => 'http://www.perl.com/cgi-bin/BugGlimpse';
                  //  $req->content_type('application/x-www-form-urlencoded');
                  //  $req->content('match=www&errors=0');

                  Was bedeutet denn da das content? - Da kann man also mitschicken was man will, und im entsprechenden response-Objekt wieder auslesen oder wie?  
                  Wieso gibts CGI? Ist req->content('...') das dann dasselbe wie param("match") und param("errors")? - ich weiss schon, das eine schreibt rein, das anderen liest aus, aber theoretisch! Wofür brauche ich dann LWP?

                  Bei mir gabs übrigens bei dem Beispiel immer einen Error - wieso? Ich habs von der DOS-Kommandozeile aus aufgerufen, muss man's dafür etwa auf einen Server legen?

                  Übrigens hab ich da nirgendwo was von REFERRER gelesen!

                  liebe Grüsse
                  Bernhard

                  PS:  Was ist WebWasher?
                  PPS: Ich finde jetzt wärst du mal gefordert, Björn's xhtml-Übersetzung noch eins draufzusetzen, und die perldoc mal auf Deutsch zu publizieren ;-)