Fwd: [Zope] Server Spontaneously Quitting
Troy Farrell
troy at entheossoft.com
Mon Mar 1 00:54:07 EST 2004
Looks good. I'd make one change. In my setups, I'm adamant that Zope
is not accessed, except by via apache. I edit my zope setup to listen
only on localhost (127.0.0.1) and change my Apache RewriteRules to use
that instead of the server ip (111.111.111.111.) I also like my
managing to be done via https so passwords are not passed cleartext.
For that to work, I have an additional domain (or sub-domain.)
Zope looks like this:
Zope root (zope.domain.com)
+ buystuff (buystuff.com)
+ mycause (mycause.com)
Apache listens on 443 and 80, then I use the following rewrite rules
buystuff.com:
# Zope management rule
RewriteRule ^(.*)/manage(.*)
https://zope.domain.com/buystuff$1/manage$2 [R]
# Zope VHM rule
RewriteRule ^/(.*)
http://127.0.0.1:8081/VirtualHostBase/http/www.buystuff.com:80/buystuff/VirtualHostRoot/$1
[L,P]
mycause.org:
# Zope management rule
RewriteRule ^(.*)/manage(.*)
https://zope.domain.com/mycause$1/manage$2 [R]
# Zope VHM rule
RewriteRule ^/(.*)
http://127.0.0.1:8081/VirtualHostBase/http/www.mycause.org:80/mycause/VirtualHostRoot/$1
[L,P]
This way, you only have one IP and one SSL cert - saves money. BTW,
'buystuff$1' is not a typo. It's needed because the pattern match
includes the forward-slash.
Troy
Patrick Kirk wrote:
> OK. I'd be grateful if others on the list would read this as well to
> provide a sanity check.
>
> Step 1: Put a Virtual Host Monster in your Zope root folder. Give it a
> unique id but it really doesn't matter what you call it.
>
> Step 2: Let us assume you have a site called http://www.buystuff.com
> served from a folder called "buystuff" in your root directory and a site
> called http://www.mycause.org is served from "mycause" folder. Lets
> also assume your IP is 111.111.111.111 and Zope is on port 8081 with
> Apache on port 80.
>
> Step 3: The virtual hosts section for www.buystuff.com will read:
> <VirtualHost *:80>
> ServerAdmin you at you.com
> DocumentRoot /this/does/not/matter
> ServerName www.buystuff.com
> ErrorLog logs/www.buystuff.com-error_log
> CustomLog logs/www.buystuff.com-access_log common
> RewriteEngine on
> RewriteRule ^/(.*)
> http://111.111.111.111:8081/VirtualHostBase/http/www.buystuff.com:80/buystuff/VirtualHostRoot/$1
> [NC,L,P]
>
> </VirtualHost>
>
> Step 4: The virtual hosts section for www.mycause.org will read:
> <VirtualHost *:80>
> ServerAdmin you at you.com
> DocumentRoot /this/does/not/matter
> ServerName www.mycause.org
> ErrorLog logs/www.mycause.org-error_log
> CustomLog logs/www.mycause.org-access_log common
> RewriteEngine on
> RewriteRule ^/(.*)
> http://111.111.111.111:8081/VirtualHostBase/http/www.mycause.org:80/mycause/VirtualHostRoot/$1
> [NC,L,P]
>
> </VirtualHost>
>
> Apart from the [NC,L,P] this is from the virtual host monster
> documentation. And others on this list gave me them!
>
> Step 5: Run the command "apachectl configtest" and it will tell you if
> there are any syntax errors without requiring you to restart apache and
> find out the hard way you've put a comma in the wrong place.
>
> Step 6: Run "apachectl restart" and your sites should now be served from
> Zope through Apache. And the beauty of it is that it just works.
>
> If you have any problems, let us know.
>
> Best regards,
>
> Patrick Kirk
More information about the Zope
mailing list