[Zope-dev] small typo

Federico Di Gregorio fog@mixadlive.com
Mon, 24 Jan 2000 18:31:56 +0100


Hi,

	today i tried to use the apache mod_fastcgi to skip the 
cgi-wrapper. after fighting a little bit with apache i discovered
that the configuration snippet in WEBSERVER.txt is wrong:

FastCgiExternalServer /PATH/TO/apache/htdocs/zope \
                      -socket /tmp/zope.soc       \
                      -pass-header Authorization

the "-socket /tmp/zope.soc" makes you think that the module takes
absolute paths but that's not the case. the path is always relative
to FastCgiIpcDir (= /tmp/fcgi in last release.) i sugget to modify
the example as follow:

--------
# zope and apache should have rwx permission to the following 
# directory, to create (zope) and connect (apache) to the ipc socket
FastCgiIpcDir /your/ipc/dir      

# note the relative path to the ipc socket in the following directive
FastCgiExternalServer /PATH/TO/apache/htdocs/zope \
                      -socket zope.soc       \
                      -pass-header Authorization
-------

and also change "-F /tmp/zope.soc" to "-F /your/ipc/dir/zope.soc"
about 20 lines above.

note also that using /tmp as the socket directory is... mmm... bad
if you have a daemon like tmpreaper running.

finally, maybe someone is interested in how to use an url like
http://localhost and have fastcgi call zope. this is how i did it:

<VirtualHost localhost>
  DocumentRoot /var/www
  RewriteEngine on
  RewriteCond %{HTTP:Authorization}  ^(.*)
  RewriteRule ^/(.*) /zope/$1 \
    [e=HTTP_CGI_AUTHORIZATION:%1,t=application/x-httpd-cgi,l]
  FastCgiExternalServer /var/www/zope -socket Z2-fcgi.soc \
    -pass-header Authorization -flush
  SetHandler fastcgi-script
</VirtualHost>

very usefull for production sites running multiple virtual hosts.

ciao,
federico

-- 
Federico Di Gregorio
MIXAD LIVE System Programmer                           fog@mixadlive.com
Debian GNU/Linux Developer & Italian Press Contact        fog@debian.org
             A short story: I want you. I love you. I'll miss you. -- Me