Linux CGI Beispiel
Verfasst: 12.05.2005 17:15
Guten Abend,
Ich habe hier ein kleines Beispiel unter coLinux geschrieben:
PrintN() gibt immer etwas aus. Zuerst muss jedoch immer der Inhalts-typ festgelegt werden. Dies geschieht durch printn("CONTENT-TYPE: text/html"+chr(10)+chr(10)). Zu beachten sind auch die beiden Chr(10)+Chr(10), die immer an dieser Zeile vorhanden sein müssen. Bei printn("Your IP: "+PeekS(getenv_("REMOTE_ADDR"))) habe ich noch ein weiteres Feature eingefügt. Durch getenv_ kann man eine Umgebungsvariable auslesen. In diesem fall REMOTE_ADDR(Die Internet IP-Adresse des Users).
Hier kann man das Packet herunterladen:
http://www.bradan.net/downloads/cgi_example.zip
Die EXE bitte nicht unter Windows starten, es ist eine Linux Anwendung.
Hier noch der Output:
http://www.bradan.net/cgi-bin/test
Und hier noch eine Liste der Umgebungsvariablen mit'n paar Beispielwerten:
Ich habe hier ein kleines Beispiel unter coLinux geschrieben:
Code: Alles auswählen
printn("CONTENT-TYPE: text/html"+chr(10)+chr(10))
printn("<!DOCTYPE HTML PUBLIC "+chr(34)+"-//W3C//DTD HTML 4.0//EN"+chr(34)+" "+chr(34)+"http://www.w3.org/TR/REC-html40/strict.dtd"+chr(34)+">"+chr(10))
printn("<html lang="+chr(34)+"en"+chr(34)+" dir="+chr(34)+"LTR"+chr(34)+">"+chr(10))
printn("<body>"+chr(10))
printn("Your IP: "+PeekS(getenv_("REMOTE_ADDR"))+chr(10))
printn("</body>"+chr(10))
printn("</html>"+chr(10)+chr(10))
Hier kann man das Packet herunterladen:
http://www.bradan.net/downloads/cgi_example.zip
Die EXE bitte nicht unter Windows starten, es ist eine Linux Anwendung.
Hier noch der Output:
http://www.bradan.net/cgi-bin/test
Und hier noch eine Liste der Umgebungsvariablen mit'n paar Beispielwerten:
HTTP_USER_AGENT="Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.3) Gecko/20041020"
SERVER_PORT=80
HTTP_HOST=localhost
DOCUMENT_ROOT="/var/www/html"
HTTP_ACCEPT_CHARSET="iso-8859-1,*,utf-8"
SCRIPT_FILENAME="/var/www/cgi-bin/env.sh"
REQUEST_URI="/cgi-bin/env.sh"
SCRIPT_NAME="/cgi-bin/program.cgi"
HTTP_REFERRER="http://localhost/web-page.html"
HTTP_CONNECTION=Keep-Alive""
REMOTE_PORT=32984
PATH="/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin"
PWD="/var/www/cgi-bin"
SERVER_ADMIN="root@localhost"
HTTP_ACCEPT_LANGUAGE=en
HTTP_ACCEPT='text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5'
REMOTE_ADDR='127.0.0.1'
SHLVL=1
SERVER_NAME=localhost
SERVER_SOFTWARE='Apache/2.0.52 (Fedora)'
QUERY_STRING=
SERVER_ADDR='127.0.0.1'
GATEWAY_INTERFACE='CGI/1.1'
SERVER_PROTOCOL='HTTP/1.1'
HTTP_ACCEPT_ENCODING=gzip
REQUEST_METHOD=POST
CONTENT_LENGTH=47
CONTENT_TYPE='application/x-www-form-urlencoded'
POST_DATA='formval1=VALUE1&formval2=VALUE2&formval3=VALUE3'