Apache e Zope na porta 80
Tenho visto muita gente curiosa em experimentar o Zope e depois que o
fazem, a questão é sempre a mesma, "Como é que eu posso pôr o Apache e
o Zope na porta 80 ?"
O cenário é simples, o Apache corre por omissão na porta 80, o Zope na 8080.
A resposta também o é, e consiste em meter o Apache a fazer reverse proxying (precisa do mod_proxy) e criar um VirtualHostMonster no Zope com um nome qualquer.
Exemplo de um VirtualHost muito simplificado (mas que funciona) em Apache com um Plone instalado no Zope:
<VirtualHost www.boingboing.foo>
RewriteEngine On
ProxyPass /misc_ http://localhost:8080/misc_
Proxypass /p_ http://localhost:8080/p_
ProxyPass / http://localhost:8080/VirtualHostBase/http/www.boingboing.foo:80/plone/VirtualHostRoot/
ProxyPassReverse / http://localhost:8080/VirtualHostBase/http/www.boingboing.foo:80/plone/VirtualHostRoot/
Alias /forum /home/vhosts/forum
Alias /blog /home/vhosts/blog
Alias /wiki /home/vhosts/wiki
ServerAdmin webmaster@boingboing.foo
DocumentRoot /home/vhosts
ServerName www.boingboing.foo
CustomLog logs/www.boingboing.foo-access_log common
ErrorLog logs/www.boingboing.foo-error_log
</VirtualHost>
O cenário é simples, o Apache corre por omissão na porta 80, o Zope na 8080.
A resposta também o é, e consiste em meter o Apache a fazer reverse proxying (precisa do mod_proxy) e criar um VirtualHostMonster no Zope com um nome qualquer.
Exemplo de um VirtualHost muito simplificado (mas que funciona) em Apache com um Plone instalado no Zope:
- O nome do Plone no Zope é plone;
- Deste modo, o plone é a página principal do site, i. e., aquela que se vê quando o browser pede www.boingboing.foo;
- As páginas servidas pelo Apache precisam do Alias, assim temos páginas servidas pelo Apache em:
www.boingboing.foo/forum
www.boingboing.foo/blog
www.boingboing.foo/wiki - Tudo na porta 80, sem necessidade de escrever números de portas no URL.
<VirtualHost www.boingboing.foo>
RewriteEngine On
ProxyPass /misc_ http://localhost:8080/misc_
Proxypass /p_ http://localhost:8080/p_
ProxyPass / http://localhost:8080/VirtualHostBase/http/www.boingboing.foo:80/plone/VirtualHostRoot/
ProxyPassReverse / http://localhost:8080/VirtualHostBase/http/www.boingboing.foo:80/plone/VirtualHostRoot/
Alias /forum /home/vhosts/forum
Alias /blog /home/vhosts/blog
Alias /wiki /home/vhosts/wiki
ServerAdmin webmaster@boingboing.foo
DocumentRoot /home/vhosts
ServerName www.boingboing.foo
CustomLog logs/www.boingboing.foo-access_log common
ErrorLog logs/www.boingboing.foo-error_log
</VirtualHost>