UlfB: (CGI & STRATO) Skript läuft bei Strato nicht

Hi,

ich habs woanders versucht, aber leider ohne Erfolg, d.h. Selfhml=DasEinzigWahre!!

Also, um nicht alles nochmal neu schildern zu müssen, findet ihr mein Problem im Strato-Forum unter:

http://www.strato-forum.de/cgi-bin/UltraBoard/UltraBoard.cgi?action=Read&BID=9&TID=335&SID=29572

Wiegesagt, dass Script, welches mir Calocybe freundlicherweise geschrieben hat, läuft zwar bei www.space4u.de einwandfrei, aber bei strato kireg ich immer wieder den 500er serverError.

Für den Fall, dass sich heraustellt, das ich es bei Strato gar nicht ans laufen kriegen kann:
Gibt es die Möglichkeit, ein  cgi-Script sozusagen Serverübergreifend arbeiten zu lassen? Also von space4u auf strato?

Auf Hilfe hoffend,

Euer UlfB

  1. Hi!
    Was hast du denn bei Strato?

    Webvisitenkarte: no CGI
    PowerWeb: nur fertige CGIs
    Premiunm: eigene CGIs

    HTH

    ciao
    Stiefel

    1. Hi,

      es handelt sich natürlich um

      Premiunm: eigene CGIs

      aber sonst dürfte ich ja auch gar nicht in der Lge sein, mir ein cgi-Verzeichnis zu erzeugen, denke ich.

      MfG

      Ulf

  2. Hi Ulf!

    http://www.strato-forum.de/cgi-bin/UltraBoard/UltraBoard.cgi?action=Read&BID=9&TID=335&SID=29572

    Ich hab mir das mal durchgelesen. Funktioniert es nun mit der Aenderung, die C. Bartke dort vorgeschlagen hat? (Der geaenderte Code ist inhaltlich derselbe. Uralt-Interpreter akzeptieren meine Schreibweise noch nicht, jedoch die in der geaenderten Fassung. Konnte ja nicht wissen, dass sowas noch so sehr verbreitet ist. ;-) )

    Fuer praktisch ausgeschlossen halte ich, dass es mit dem "use strict" zusammenhaengt. Das ist naemlich keine x-beliebige Bibliothek, wie dort vermutet wurde, sondern zentraler Bestandteil einer jeden Perl-Distri.

    Für den Fall, dass sich heraustellt, das ich es bei Strato gar nicht ans laufen kriegen kann:
    Gibt es die Möglichkeit, ein  cgi-Script sozusagen Serverübergreifend arbeiten zu lassen? Also von space4u auf strato?

    Wenn es noch nicht funktioniert, muessen wir den Fehler einkreisen. Dazu waere der Zugriff auf das Error-Log von Noeten, damit wir erstmal ne vernuenftige Fehlermeldung sehen. Hast Du den?

    So long

    1. Hi,

      http://www.strato-forum.de/cgi-bin/UltraBoard/UltraBoard.cgi?action=Read&BID=9&TID=335&SID=29572

      Funktioniert es nun mit der Aenderung, die C. Bartke dort vorgeschlagen hat?

      Also zumindest gibt es jetzt keinen Server-Error mehr. Ich habe exakt Cornelius Änderungen eingetragen, und bekomme jetzt anstelle der update-Mitteilung folgende Nachricht:

      Internal Error
      An internal error occured. Contact the maintainer of the site.
      Error message: Sequence (?<...) not recognized

      Wenn ich im Skript die ?<... Stelle rausnehme, kommt kein Fehler mehr, aber es passiert natürlich trotzdem nix (also es gibt zwar die updatet-Meldung, aber es wurde nix abgedatet).

      Du kannst das Skript auch ausführen unter

      http://www.drogenhilfe-hamm.de/cgi-bin/mcu.pl

      MfG
      Ulf

      Fuer praktisch ausgeschlossen halte ich, dass es mit dem "use strict" zusammenhaengt. Das ist naemlich keine x-beliebige Bibliothek, wie dort vermutet wurde, sondern zentraler Bestandteil einer jeden Perl-Distri.

      Für den Fall, dass sich heraustellt, das ich es bei Strato gar nicht ans laufen kriegen kann:
      Gibt es die Möglichkeit, ein  cgi-Script sozusagen Serverübergreifend arbeiten zu lassen? Also von space4u auf strato?

      Wenn es noch nicht funktioniert, muessen wir den Fehler einkreisen. Dazu waere der Zugriff auf das Error-Log von Noeten, damit wir erstmal ne vernuenftige Fehlermeldung sehen. Hast Du den?

      So long

      1. ReHi!

        Internal Error
        An internal error occured. Contact the maintainer of the site.
        Error message: Sequence (?<...) not recognized

        Oh. Das gibt es also in aelteren Versionen auch noch nicht. Das nervt mich jetzt aber schon etwas.

        Wenn ich im Skript die ?<... Stelle rausnehme, kommt kein Fehler mehr, aber es passiert natürlich trotzdem nix (also es gibt zwar die updatet-Meldung, aber es wurde nix abgedatet).

        Ja, das ist naemlich genau die Stelle, wo der alte Inhalt durch den neuen ersetzt wird.

        Ich kann Dir jetzt keinen getesteten Workaround bieten (mangels Zeit), aber versuche mal folgendes. In der sub Exec_Update:

        statt:
            # check if file is alright
            $begin = quotemeta($CONFIG{'begin-mark'});
            $end = quotemeta($CONFIG{'end-mark'});

        die("Cannot find content delimiters in that file.") unless ($fcontent =~ /$begin(.*?)$end/s);

        # replace the content
            $fcontent =~ s/(?<=$begin).*?(?=$end)/$content/s;

        machst Du:
            # check if file is alright
            $begin = $CONFIG{'begin-mark'};
            $end = $CONFIG{'end-mark'};

        die("Cannot find content delimiters in that file.") unless ($fcontent =~ /\Q$begin\E(.*?)\Q$end\E/s);

        # replace the content
            $fcontent =~ s/\Q$begin\E.*?\Q$end\E/$begin$content$end/s;

        Wie gesagt nicht getestet, aber einen Versuch ist es schon wert.

        HTH && So long

        1. Super, das wars. :-)
          Lieben Dank nochmal.

          Im Anschluss nochmal das volständige Skript,

          mfg, der ulf

          PS. Huch, ich glaube das wäre zu gross. Es liegt erstmal unter

          http://www.ubdata.de/mcu.txt