[Zope-dev] Re: [Zope] PCGI?

Leonardo Rochael Almeida leo@hiper.com.br
14 Feb 2003 18:09:31 -0200


Beware, random notes below

On Fri, 2003-02-14 at 11:24, Romain Slootmaekers wrote:
> 
> here's an edited repost from an answer I got from this mailing list.
> it has helped me with zope+apache (+ ssl) and is a good start for the
> documentation upgrade, (although I personally use the apache proxypass 
> directives)
> 
> -- original help from Leonardo Rochael Almeida <leo@hiper.com.br> --
> [...]

Wow, I'd forgoten about that one :-)

Anyway, nowadays I use RewriteRules with [P] exclusively because they
let me do something ProxyPass doesn't:

RewriteRule ^(.*)$ http://127.0.0.1:8080/VirtualHostBase/http/%{HTTP_HOST}:%{SERVER_PORT}/some/folder/VirtualHostRoot$1 [P,L]

This way you don't have to worry about what hostname the user uses to
access their site. You can get cookie problems and multiple logon
problems if Zope's idea of the hostname is different from the browser's.

In any case, I believe we should still have a proper persistent protocol
to connect a frontend webserver to Zope. The current http proxying
method, which is used by most everyone now, is fast enough for the
majority of uses, but it still incurs in a tcp tearup+teardown for every
hit.

I believe we should have a proper persitent protocol, either PGCI or
FastCGI (but probably not both, to avoid confusion), to connect Zope and
front-end webservers and we should also make an effort to keep the
connectors from major HTTP servers to those protocols in good shape.
Apache+FastCGI+Zope work really nice (sans RESPONSE.write() streamming
pages), but I couldn't get IIS+FastCGI to work no matter what I tried
(IIS insists in associating the fastcgi connector with an extension, no
matter what you do. Yes, you can associate it with all extensions. No,
it doesn't work).

I have some ideas about how to make a good IIS connector (definition of
good: fast, with pretty URLs). It could be developed first with WinHTTP
to take advantage of the current design of ASP404, but it would be
faster if it didn't have to make and break a connection for every
request. I haven't started on it yet because my expertise lies in 'nix
development, so I'd prefer if someone with better Win32 devel skills
took the job. If anyone is interested, drop me a line.

Also, I'm holding on to the next ASP404 release because I need to give
it better error handling and logging. All hits thru ASP404 look to IIS
like, you guessed it, 404 errors instead of hits, so when you hide Zope
behind IIS there's no single reliable access log you can use. If anyone
can give me hints on these topics, please drop me a line too.

Cheers, Leo

-- 
Ideas don't stay in some minds very long because they don't like
solitary confinement.