Marcus Vieß: Filter im CGI

Hallo, noch ein paar Fragen.
So erstmal das korpus delikti.
Rausgefiltert soll werden /robots.txt und /favicon.ico
Was ich auch versuche es klappt nicht deshalb nochmal ein aufruf zur hilfe.

my(@filter) = ('/robots.txt','favicon.ico$');
my($filter) = join('',@filter);
if(!($ENV{'REDIRECT_URL'} =~ /($filter)/))
   {
   &mailschicken;
#  &logschreiben;
   &htmlausgabe
   }

1. Wo war das else nochmal ??? also wenn z.B /favicon.ico kommt soll nur das subprog &htmlausgabe
ausgeführt werden.
2. Wenn ein File wie robots bzw favicon kommt bekomme ich den berühmten internal server error.
3. Wie lautet der richtige Filter Syntax für /robots.txt ?

gruss,
            Marcus ...

  1. Hallo,

    my(@filter) = ('/robots.txt','favicon.ico$');
    my($filter) = join('',@filter);
    if(!($ENV{'REDIRECT_URL'} =~ /($filter)/))
       {
       &mailschicken;
    #  &logschreiben;
       &htmlausgabe
       }

    So sieht man sich wieder :-)

    1. Wo war das else nochmal ??? also wenn z.B /favicon.ico kommt soll nur das subprog &htmlausgabe
      ausgeführt werden.

    Kein else:

    Wenn Du '&htmlausgabe' nicht in vom Filter abhängig machst, sondern immer ausführst (z.B. nach der If-Abfrage), dann sparst Du Dir den Else-Zweig.

    1. Wenn ein File wie robots bzw favicon kommt bekomme ich den berühmten internal server error.

    Weil keine htmlausgabe erfolgt, denk ich. Was steht im Servrerlog.

    1. Wie lautet der richtige Filter Syntax für /robots.txt ?

    'perldoc perlre' und nachdenken hilft da sicherlich.

    Grüße
      Klaus

    1. So sieht man sich wieder :-)

      Grins,

      Ja jetzt fluppt es genauso wie ich das will !!!
      Du hast es mir ja schwerer gemacht als es eigentlich war ! hehe
      Ok danke nochmals ...

      nur noch eine Frage ! was ist jetzt die Mail die Url /toymuseum/undefined wurde nicht gefunden ?
      Das heißt doch undefiniert, aber was soll das ? wenn ich die URL selber anwähle ohne angabe usw.
      bekomme ich einfach die normale also z.B /toymuseum/. Rückmail !

      gruss ...