More CGI Stuff
Yennie at aol.com
Yennie at aol.com
Wed Aug 28 00:11:01 EDT 2002
Hi guys,
With all of this CGI talk lately, I cooked something up.
I've been working with a server program based on the ol' mc httpd stack,
since I make heavy use of Valentina. However, I've always wanted to break it
down into separate cgi scripts. Among other things, that gives me multiple
processes more easily.
So my question... is there *any* way to access externals (including the new
Mach-o ones with 2.4.3) from a CGI script?
The best I can come up with is running a separate stack which houses the
external, and communicating via sockets.
Any ideas?
In case anyone finds this script useful, this is what I'm using to talk to my
mc httpd-inspired stack:
#!mc
on startup
open socket to "127.0.0.1:8080"
put $REQUEST_METHOD&&$REQUEST_URI&&"CGI"&crLF into theRequest
if ($HTTP_COOKIE is not empty) then
put "Cookie: "&$HTTP_COOKIE&crLF after theRequest
end if
if ($REMOTE_USER is not empty) then
put "Remote-User:"&&$REMOTE_USER&crLF after theRequest
end if
if ($REQUEST_METHOD = "PUT") then
read from stdin until empty
put crLF&it after theRequest
end if
write theRequest&crLF&crLF to socket "127.0.0.1:8080"
read from socket "127.0.0.1:8080" until (crLF&crLF)
put it into theHeaders
put lineOffset(theHeaders, "Content-Length:") into theLine
if (theLine > 0) then
set the itemDelimiter to ":"
put item 2 of line theLine of theHeaders into theLength
read from socket "127.0.0.1:8080" for theLength
put it into theBody
else
read from socket "127.0.0.1:8080" until empty
put it into theBody
end if
## delete the status line
delete line 1 of theHeaders
put (theHeaders&crLF&crLF&theBody)
end startup
Best Regards,
Brian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.runrev.com/pipermail/metacard/attachments/20020827/34ce0f00/attachment.htm
More information about the metacard
mailing list