[Zope] How? ZServer + PCGI

Amos Latteier amos@aracnet.com
Tue, 15 Jun 1999 09:25:04 -0700


At 12:24 AM 6/15/99 -0600, Alex Rice wrote:
...
>  % python w_pcgi.py
>  % chown -R nobody var/
>  % chgrp -R nobody var/
>  % cp Zope.cgi /home/httpd/cgi-bin/
>  % python z2.py -d 198.59.115.2 -p Zope.cgi 
>
>** [ why can't I leave off the DNS server, and let -p default to Zope.cgi? ]

You should be able to leave out the DNS server and allow -p to default to
Zope.cgi. What's stopping you?

BTW, why are changing the ownership of var to nobody but seemingly running
ZServer as your userid?

>** [ now I browse to http://localhost/manage and I get this back from z2.py]
>
>log: adding channel <PCGIChannel at 84290a0>
>Unhandled exception in thread:
>Traceback (innermost last):
>  File
>"/usr/share/Zope-2.0.0a2-src/ZServer/PubCore/ZServerPublisher.py", line
>97, in __init__
>    response._finish()
>  File "/usr/share/Zope-2.0.0a2-src/ZServer/PCGIServer.py", line 348, in
>_finish
>    self.stdout.close()
>  File "/usr/share/Zope-2.0.0a2-src/ZServer/PCGIServer.py", line 383, in
>close
>    Wakeup()
>  File "/usr/share/Zope-2.0.0a2-src/ZServer/medusa/select_trigger.py",
>line 80, in pull_trigger
>    self.trigger.sendto (msg, self.addr)
>socket.error: (13, 'Permission denied')

OK, this is a generic medusa problem. My guess is that you'll get this from
any sort of access to ZServer such as HTTP, FTP, PCGI, etc. The select
trigger is a socket file in the /tmp directory which ZServer uses to wake
up the select call after it finishes publishing in a thread. My guess is
that there is some permissions problem, perhaps in the /tmp directory which
is keeping ZServer from writing to the socket file.

Hope this helps.

-Amos