Grabbing HTTP Header
Monte Goulding
monte at sweattechnologies.com
Tue May 6 03:06:01 EDT 2003
Well I don't know what to say. It works perfectly here. Try just:
#!mc
on startUp
put $QUERY_STRING into tBuffer
put "Content-Type: text/plain" & cr
put "Content-Length:" && the length of buffer & cr & cr
put tBuffer
end startUp
Monte
>
> Thanks, Monte.
>
> I got your post on the Rev list. The engine is in the right place
> and referenced correctly. A simple CGI that doesn't involve
> parsing the incoming headers but just puts up a message works just fine.
>
> I have set the permissions on the script to 755, so that is right as well.
>
> I just can't make the very script that you present below run on
> my system and I'm completely befuddled as to why. One of the
> problems is I can't figure out where on OSX there might be a log
> I can check to see more precisely what's going wrong here.
>
> Arrggggh.
>
> >
> >Hi Dan
> >
> >I'm not sure if you go my post on the Rev list about this. One thing that
> >you need to remember is to make sure the first line points to
> the engine. If
> >the engine is named mc and it's in the same folder as the cgi
> then the first
> >line is: #!mc otherwise it's #!<path to mc><engine name>. It's
> beter to work
> >out the full path then you can put CGIs anywhere and you don't need to
> >change it.
> >
> >I've posted the version of echo.cgi that I use for your reference:
> >
> >#!mc
> ># This MetaTalk script loops over all the environment variables
> ># set by the server when it runs a CGI application printing out
> ># its name and value.
> >on startup
> > # loop over all of the global variables, getting name and value
> > repeat for each item i in the globals
> > put i && "=" && value(i)& return after buffer
> > end repeat
> > # write minimal set of HTTP headers to stdout
> > read from stdin until empty
> > put it after buffer
> > replace cr with "<P>" in buffer
> > put "Content-Type: text/plain" & cr
> > put "Content-Length:" && the length of buffer & cr & cr
> > put buffer
> >end startup
> >
> >The other thing is to make sure the file has permissions of 755 so it can
> >execute.
> >
> >Regards
> >
> >Monte
> >>
> >>
> >> This script does not run on my configuration. It gives me the
> >> same useless internal server error all other CGIs that don't
> work give me.
> >>
> >> I am really stumped here. I hope someone can lead me out of the
> >> wilderness.
> >>
> >> >I though the echo.mt cgi has it?
> >> >
> >> >#!/home/mc/mc
> >> ># This MetaTalk script loops over all the environment variables
> >> ># set by the server when it runs a CGI application printing out
> >> ># its name and value.
> >> >on startup
> >> ># loop over all of the global variables, getting name and value
> >> > repeat for each item i in the globals
> >> > put i && "=" && value(i) & return after buffer
> >> > end repeat
> >> >
> >> > put "" into tContainer
> >> > if $CONTENT_LENGTH > 0 then
> >> > put $CONTENT_LENGTH into tLen
> >> > put "" into tContainer
> >> > put 0 into tContainerSize
> >> > repeat
> >> > read from stdin until empty
> >> > put it after tContainer
> >> > add length(it) to tContainerSize
> >> > if tContainerSize >= tLen then
> >> > exit repeat
> >> > end if
> >> > end repeat
> >> > end if
> >> >
> >> > #!
> >> > put "Content-Type: text/plain" & cr
> >> > put "Content-Length:" && the length of (buffer &
> tContainer) & cr & cr
> >> > put buffer & tContainer
> >> >end startup
> >> >
> >> >--
> >> >
> >> >
> >> >_______________________________________________
> >> >metacard mailing list
> >> >metacard at lists.runrev.com
> >> >http://lists.runrev.com/mailman/listinfo/metacard
> >> _______________________________________________
> >> metacard mailing list
> >> metacard at lists.runrev.com
> >> http://lists.runrev.com/mailman/listinfo/metacard
> >>
> >
> >_______________________________________________
> >metacard mailing list
> >metacard at lists.runrev.com
> >http://lists.runrev.com/mailman/listinfo/metacard
> _______________________________________________
> metacard mailing list
> metacard at lists.runrev.com
> http://lists.runrev.com/mailman/listinfo/metacard
>
More information about the metacard
mailing list