Schrift
[thread]155[/thread]

Umgebung des Scripts erkennen CGI oder shell: Ich dachte da an %ENV{??????} ...



<< |< 1 2 >| >> 11 Einträge, 2 Seiten
steffenw
 2004-01-23 12:42
#1045 #1045
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Wenn ich ein Script sowohl als CGI-Script laufen lassen will als auch als Shell-Script, wie erkenne ich dann sicher, wie es aufgerufen wurde. Oder anders gefragt, welche Umgebungsvariablen sind typisch für eine CGI-Umgebung?
$SIG{USER} = sub {love 'Perl' or die};
Strat
 2004-01-23 13:13
#1046 #1046
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
folgende umgebungsvariablen sind typisch fuer ein webscript:
SERVER_NAME REQUEST_METHOD SERVER_SOFTWARE HTTP_HOST
ueber GATEWAY_INTERFACE kannst du dann genaueres herausbekommen, z.B. CGI/1.1, modperl, ...)
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
eisbeer
 2004-01-23 14:42
#1047 #1047
User since
2003-08-29
347 Artikel
BenutzerIn
[Homepage] [default_avatar]
oder auch REMOTE_ADDR oder REMOTE_HOST, wobei
die nicht unbedingt gesetzt sein müssen.

Der vollständigkeit halber :p
Die meisten PC Probleme befinden sich zwischen Bildschirm und Stuhl...
ptk
 2004-01-23 18:16
#1048 #1048
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=Strat,23.Jan..2004, 12:13]folgende umgebungsvariablen sind typisch fuer ein webscript:
SERVER_NAME REQUEST_METHOD SERVER_SOFTWARE HTTP_HOST
ueber GATEWAY_INTERFACE kannst du dann genaueres herausbekommen, z.B. CGI/1.1, modperl, ...)[/quote]
HTTP_HOST wahrscheinlich nur, wenn ueber HTTP/1.1 verbunden wird. Bei HTTP/1.0 ist Host: nicht erforderlich.
steffenw
 2004-01-23 23:32
#1049 #1049
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
Danke für Eure Antworten.

Ich habe mich für "REQUEST_METHOD" entschieden, weil ich mir überlegt habe, wenn "REQUEST_METHOD" nicht gesetzt ist, ist doch die ganze Anfrage sinnlos oder? Den Inhalt prüfe ich nicht, da ist sicher immer "GET" oder "POST" drin.
$SIG{USER} = sub {love 'Perl' or die};
pq
 2004-01-24 01:52
#1050 #1050
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=steffenw,23.01.2004, 22:32]Den Inhalt prüfe ich nicht, da ist sicher immer "GET" oder "POST" drin.[/quote]
naja, muss nicht. könnte z.B. auch HEAD sein...
=)\n\n

<!--EDIT|pq|1074901984-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
steinwolf
 2004-01-24 14:27
#1051 #1051
User since
2003-08-04
367 Artikel
BenutzerIn
[default_avatar]
Wofür ist denn HEAD?
"Did you know? You can use your old motor oil to fertilize your lawn." - Blinkster - Professionelles EDV Forum
pq
 2004-01-24 14:45
#1052 #1052
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
naja, um sich den head (also kopf auf englisch) anzeigen zu lassen. ohne body (körper).
da kriegst du dann den content-type und den ganzen kram, aber das eigentliche
dokument nicht. kann nützlich sein, um sich anzeigen zu lassen, ob eine url überhaupt
gültig ist.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Dubu
 2004-01-25 00:58
#1053 #1053
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
HEAD wird auch von Browsern oder Caches benutzt, um bei einer erneuten Anfrage der Seite festzustellen, ob sie sich geaendert hat und komplett neu geladen werden muss oder nicht.
ptk
 2004-01-26 20:12
#1054 #1054
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=Dubu,24.Jan..2004, 23:58]HEAD wird auch von Browsern oder Caches benutzt, um bei einer erneuten Anfrage der Seite festzustellen, ob sie sich geaendert hat und komplett neu geladen werden muss oder nicht.[/quote]
Normalerweise wird GET mit If-modified-since verwendet, um einen Request zu sparen.
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2004-01-23 12:42.