Mailinglisten-Archive |
On Tue, Apr 09, 2002 at 10:14:51PM +0200, Norbert Pfeiffer wrote: <snip> > - Vielleicht weil cgi fuer mich ein Synonym fuer Perl ist ? > Es gibt unzaehlige Perl-Scripte, die als Extension cgi haben. > - Oder weil ich vermutete, dass der Aufruf von Programmen > grundsaetzlich anders funktioniert, als bei Scripten ? beides fehlannahmen. cgi's kann man genauso gut auch in C oder oberon schreiben ... > - da es unter Unix keine Extensionen gibt, weiss ich als Laie > auch nicht, woran das OS erkennt, was Binary oder Script ist. an den ersten paar bytes. nennt sich magic value. steht da beispielsweise #! erwartet der kernel dahinter eine cmdline fuer den interpreter, z.b. /usr/bin/perl oder /usr/bin/php oder auch /bin/bash ... > - In der Bash gibt es schliesslich keinerlei Unterschiede, > nur der Apache reagiert verschieden, warum ... das sind zwei voellig verschiedene paar schuhe. der apache unterscheidet z.b. anhand der endung, welches modul fuer dieses file zustaendig ist. (z.b. plain, php, oder as-is) bei cgi wird einfach das file mit exec() gestartet. (was vorraussetzt, dass es vom kernel ausfuehrbar ist) > > was genau hast du vor ? > http://itbw.de/bin/c_cgi.cgi > Senken der Serverlast durch kompilierte CGI-Tools statt erst > zu interpretierender Scripte, weiter nix. > Natuerlich nur da, wo sich der Aufwand dafuer lohnt ... ;-) sowas hatte ich mal mit oberon vor, wollte da eine komplette servlet-engine aufziehen. das problem an CGIs ist aber, dass der startup relativ zeitaufwendig ist, weil da erst ein neuer prozess erzeugt und dann dort das CGI reingestopft werden muss. deshalb hat man die server-module erfunden. es sollte nicht so sonderlich schwierig sein, ein eigenes apache-modul zu bauen. sehr rechenaufwendige sachen kann man auch in eine zend-extension packen, die z.b. in C geschrieben ist. ~-n -- Enrico Weigelt == meTUX IT services software development, IT service, internet security solutions www: http://www.metux.de/ phone: +49 36207 519931 email: contact_(at)_metux.de cellphone: +49 174 7066481
php::bar PHP Wiki - Listenarchive