[Zope] ftp and virtual hosting question

Richard Barrett R.Barrett@ftel.co.uk
Tue, 12 Mar 2002 13:08:09 +0000


At 18:36 11/03/2002 -0500, Jiann-Ming Su wrote:
>I've configured virtual hosting with zope and apache per
>http://www.zope.org/Members/anser/apache_zserver.  How do I configure zope
>so that users for each virtual host ftp right into the virtual host folder?
>Thanks for any tips.

If I understand your question, you are asking how to set up Apache to 
transparently proxy FTP connections to a Zope server, presumably with the 
objective of hiding the Zope FTP service behind Apache in the same way that 
you are hiding the Zope HTTP service.

Most of the published stuff about proxying Zope with Apache is about 
transparent proxying of HTTP requests to Zope and isn't, in my view, 
applicable to proxying FTP.

I am fairly certain you cannot use ProxyPass/RewriteRule based transparent 
proxying by Apache for what you want.

In this transparent proxying mode the ProxyPass/RewriteRule will only see 
HTTP requests.

That would mean you had to get Apache to do something something like 
rewriting the incoming HTTP URLs to the Apache server to FTP URLs it passes 
to the Zope server.

The problem is that I do not think that Apache can handle converting 
between the protocols in this way, dealing with the different reponses 
involved etc. In a brief experiment with my Apache (version 1.3.14) the 
Apache child process crashes when I just try rewriting an incoming HTTP URL 
to an outgoing FTP URL with a RewriteRule; you may have a better experience 
if you try it.

You could configure your Apache server as a full, non-transparent, proxy 
server using 'ProxyRequest on' and use related directives to control its 
proxying activity.

Then with the client browsers configured to explicitly direct FTP requests 
to the Zope server to the Apache proxy server, you could put the Zope FTP 
service behind the Apache-acting-as-a-full-blown-proxy server.

This approach would also allow an otherwise unaddressable Zope server to be 
reached by clients, i.e. as long as Apache can access the Zope server it 
doesn't matter if the Zope server is not directly reachable or addressable 
by the client. But I suspect this is not what you are trying to achieve and 
may well mess up your user's browser proxy set up. There are ways of 
dealing with this but its all getting a touch complicated given where we 
started from

I guess it all depends on what you need to achieve and the price you are 
willing to pay in terms of effort.

Best of luck.


>--
>Jiann-Ming Su  jsu2@emory.edu  404-712-2603
>Development Team Systems Administrator
>General Libraries Systems Division