我在 webmail.domain.com 上安装了 ZCS 7.2 opensource,并在 mailman.domain.com/mailman 上安装了 mailman。
我想设置一个代理,这样当有人访问 webmail.domain.com/mailman 时,代理就会提取 mailman.domain.com/mailman 的内容。
使用 apache 和 mod_proxy 我可以做类似 ProxyPass /mailman 的事情https://mailman.domain.com/mailman ProxyPassReverse /mailmanhttps://mailman.domain.com/mailman
鉴于 Zimbra 中的定制化程度,是否有可能(并且建议)对 Zimbra 的 Web 服务器进行同样的操作?因此基本上是一个转发到任意内部网站的反向代理。
答案1
点击此链接: http://www.maxxer.it/2010/linux/set-apache2-to-proxy-zimbra/
我已经使用 Apache2 成功代理 Zimbra 很长时间了。
这些命令适用于 Debian/Ubuntu 服务器。
首先,启用apache2的模块:
a2enmod proxy
a2enmod proxy_html
a2enmod proxy_http
通过更改 /etc/apache2/mods_available/proxy.conf 确保允许使用 mod_proxy
Allow from all
在本例中,我想代理 SSL,因此在开始之前,您需要将 Zimbra HTTPS 从端口 443 移开(我移到了 444)。将您的 Zimbra 证书文件复制到 apache 可访问的目录中。我选择 /etc/apache2/ssl。
要允许从 / 自动重定向到 /zimbra,就像在常规 Zimbra 安装中一样,请将以下行添加到主节中:
RedirectMatch ^/$ /zimbra/
Then, edit you apache2 config file and add:
SSLProxyEngine on
SSLCertificateFile /etc/apache2/ssl/host.crt
SSLCertificateKeyFile /etc/apache2/ssl/host.key
SSLCACertificateFile /etc/apache2/ssl/ca_bundle.crt
ProxyRequests On
ProxyPreserveHost On
ProxyVia full
<Location "/service">
ProxyPass https://your_zimbra_ip:444/service
ProxyPassReverse https://your_zimbra_ip:444/service
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /service /service
</Location>
<Location "/zimbra">
ProxyPass https://your_zimbra_ip:444/zimbra
ProxyPassReverse https://your_zimbra_ip:444/zimbra
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /zimbra /zimbra
</Location>
<Location "/home">
ProxyPass https://your_zimbra_ip:444/home
ProxyPassReverse https://your_zimbra_ip:444/home
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /home /home
</Location>
# CalDAV
<Location "/principals">
ProxyPass https://your_zimbra_ip:444/principals
ProxyPassReverse https://your_zimbra_ip:444/principals
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /principals /principals
</Location>
# DAV
<Location "/dav">
ProxyPass https://your_zimbra_ip:444/dav
ProxyPassReverse https://your_zimbra_ip:444/dav
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /dav /dav
</Location>
#Printing and HTML interface
<Location "/h">
ProxyPass https://your_zimbra_ip:444/h
ProxyPassReverse https://your_zimbra_ip:444/h
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /h /h
</Location>
# img for mobile interface
<Location "/img">
ProxyPass https://your_zimbra_ip:444/img
ProxyPassReverse https://your_zimbra_ip:444/img
ProxyPassReverse /
ProxyHTMLExtended On
ProxyHTMLURLMap /img /img
</Location>
重启 apache2,就大功告成了!PS:如果你想要代理 https:
a2enmod ssl
将以下内容添加到您的 /etc/apache2/sites-available/default-ssl
SSLProxyEngine on
ProxyRequests On
ProxyPreserveHost On
ProxyVia full