At 8/8/00 11:57 AM, Christopher Masto wrote:

>Quite wrong.  Perl doesn't set any environment variables.  But your
>web server should - it's part of the CGI specification.


That's true for most versions of Perl, but not for MacPerl.

Mac Web servers do not use the Unix CGI specification -- in fact, there's 
no such thing as STDIN, STDOUT or environment variables with Mac 
applications. Instead, Mac CGIs use AppleEvents for interprocess 
communication.

Therefore, MacPerl does, in fact, set up pseudo environment variables so 
that a MacPerl CGI script can be faked into working similarly to Unix 
Perl CGIs. The Web server doesn't know a thing about it.

To make this work, special action needs to be taken to use MacPerl 
scripts as CGIs, and there are some severe limitations with this 
compatibility mode that are not present with normal Mac CGIs. For more 
info, see:

  http://www.perlmonth.com/columns/mac_perl/mac_perl.html?issue=11

Hope this helps. What you're trying to do isn't easy -- I have extensive 
experience writing (non-Perl) Mac CGIs myself, and I chose to buy a new 
Linux box to run the OpenSRS scripts on rather than attempt to get it 
working on the Mac, if that gives you any indication  :-(

--
Robert L Mathews, Tiger Technologies

"A professional in an ape mask is still a professional." -Marge Simpson

Reply via email to