[plt-scheme] Odd error from CGI

From: Matt Jadud (mcj4 at kent.ac.uk)
Date: Sun Aug 6 17:46:40 EDT 2006

My CGI looks like this:

======
#!/Users/mcj4/bin/mzscheme -gqr

(fprintf (current-error-port)
          "Hello before the require.~n")

;;(require (lib "cgi.ss" "net"))
(require (lib "xmlrpc-cgi.ss" "xmlrpc"))

(fprintf (current-error-port)
          "Hello after the require.~n")

(output-http-headers)
(fprintf (current-error-port)
          "Hello after headers.~n")
(handle-xmlrpc-request* (get-bindings/post))
======

This is all fine and good, except that my CGI has PLaneT requires in it. 
Therefore, I need write access (it seems) to a system directory (the 
webserver "home" directory) to use library code that uses PLaneT packages.

======
Hello before the require.
make-directory: cannot make directory: /Library/WebServer/Library/ 
(Permission denied; errno=13)

  === context ===
/Users/mcj4/Apps/plt350/collects/mzlib/file.ss:226:2: make-directory*
/Users/mcj4/Apps/plt350/collects/mzlib/file.ss:226:2: make-directory*
/Users/mcj4/Apps/plt350/collects/planet/resolver.ss:172:2: resolver
standard-module-name-resolver
standard-module-name-resolver
standard-module-name-resolver

[Sun Aug  6 17:34:07 2006] [error] [client 127.0.0.1] Premature end of 
script headers: /Users/mcj4/Sites/cgi/rpctest/test.cgi
======

This isn't exactly groovy. I'll read the PLaneT docs, and see if I can 
discover a workaround for myself. I thought I'd point it out, though, 
having run into it at full speed, and wondered why my code was trying to 
make directories in protected parts of the filesystem...

Cheers,
Matt


Posted on the users mailing list.