Beat: Eine Scripturl / Priorität / Cronjob Sicherheit

Beitrag lesen

  • Eine Scripturl
    Ich habe eine art Shopsystem erstellt, soweit so gut. Dafür hab ich mehrere Dateien wie z.B. "registration.cgi", "bestellung.cgi", "login.cgi" usw., sprich: das Shopystem besteht aus einzelnen Dateien die "zusammengefasst" werden. Ich sehe des öfteren bei Shopsystemen o.ä. das die URl immer (egal wo man sich dort befindet) "shop.php/shop.cgi" etc. bleibt. Nur ich bekomme es einfach nicht gebacken und das ganze Shopsystem (zusammen etwa 1MB groß (ohne DB)) lediglich in eine Datei fließen zu lassen halte ich nicht für sinnvoll. Primär geht es mir darum, das bei mir im moment für eine Bestellung etwa 20 - 25 URl's im Verlauf gespeichert werden, Sekundär natürlich um die Optik.
    Wie schaff ich es das lediglich "shop.cgi" in der URl angezeigt werden?

Da hast du dir wahrscheinlich eine grosse Redundanz gebastelt, die du hoffentlich vermieden hast, dadurch dass die Scripte die gleichen Module einbinden.

Die eine Antwort lautet: Indem du deine Architektur änderst.
Die andere: verwende mod rewrite

Ein Script dermassen aufzusplitten wäre nicht nach meinem Geschmack.
Modularisierung in Perl läuft anders.

  • Priorität
    Wo genau liegt der Unterschied zwischen:
    open my $fh, "<", $file || die "$!";

= open( my $fh, "<", $file || die "$!"; )

und

open my $fh, "<", $file or die "$!";

= open( my $fh, "<", $file)  or die "$!";

Ich meine jetzt natürlich wo der Unterschied zwischen "||" und "or" liegt? Lese nur immer wieder das es sich nur durch die Priorität unterscheidet aber in welcher relevanz?

Es gibt die Präzedenz der Operatoren.
&& || haben höhere Präzendenz als der Listoperator (das Komma)
and or haben eine niedrigere.
Siehe Doku.

  • Cronjob Sicherheit
    Ich möchte ein Script per Cronjob zu einer festen Zeit starten lassen. So weit so gut. Dieses Script sollte jedoch NUR durch den Cronjob gestartet werden sollen und sollte nicht manuell (sprich über die URl) gestartet werden können.

Verwende .htaccess

Im moment gebe ich dem Cronjob einen Parameter mit den ich erst überprüfen lasse und erst bei richtigkeit das Script weiterlaufen lasse.

mfg Beat

--
Woran ich arbeite:
X-Torah
   <°)))o><                     ><o(((°>o
Der Valigator leibt diese Fische