I've installed Zimbra on Mac OS X Server 10.4.9 and the basic MTA and IMAP and POP services are all working well.
However, I'm having significant difficulties with getting the web interface to work correctly and any help would be appreciated. I'm trying to use Zimbra with the Apache 1.3 server that comes preinstalled since that's running other static and dynamic sites.
I've also noticed two unusual issues:
A. when trying to restart tomcat in between using zmprov to change settings it complains that it can't connect to the Slapd. Eg:
$sudo -u zimbra /opt/zimbra/bin/tomcat restart
problem reading config from ldap. Make sure ldap is running.
Slapd is definitely running, as is seen if I issue:
$sudo -u zimbra /opt/zimbra/bin/ldap status
slapd running pid: 372
B. The tomcat configuration file in /opt/zimbra/tomcat/conf/server.xml.in is buggy. The SSL section directives are delimited by badly formed comments which causes that entire section to be ignored.
Easy enough to fix, but odd. This prompted me to uninstall and reinstall Zimbra and this is reproducible.
Here's my installation procedure and setup:
1. Downloaded the install-mac.sh posted on the wiki as well as the Zimbra 4.5.3_GA_733 disk image
2. Installed using:
sudo ./install-mac.sh -d zcs-4.5.3_GA_733.MACOSX.dmg
3. When I get to the zmsetup phase, just accept defaults except set the web server mode to 'mixed' and set zimbraMailPort and zimbraMailSSLPort to 8080 and 8443 respectively (to avoid any potential issues with Tomcat trying to bind to ports which Apache has bound to already)
4. Add ProxyPass and ProxyReversePass directives to the virtual hosts files created by using ServerAdmin eg:
ServerName AAA.XXX.XXX
ServerAdmin XXX@AAA.XXX.XXX
DocumentRoot "/Library/WebServer/Documents"
DirectoryIndex index.html index.php
CustomLog "/var/log/httpd/access_log" "%h %l %u %t "%r" %>s %b"
ErrorLog "/var/log/httpd/error_log"
ErrorDocument 404 /error.html
ProxyPass / http://AAA.XXX.XXX:8080">http://AAA.XXX.XXX:8080/
ProxyPassReverse / http://AAA.XXX.XXX:8080">http://AAA.XXX.XXX:8080/
LogLevel warn
And exactly the same for 443->8443:
ServerName AAA.XXX.XXX
ServerAdmin XXX@AAA.XXX.XXX
DocumentRoot "/Library/WebServer/Documents"
DirectoryIndex index.html index.php
CustomLog "/var/log/httpd/access_log" "%h %l %u %t "%r" %>s %b"
ErrorLog "/var/log/httpd/error_log"
ErrorDocument 404 /error.html
ProxyPass / https://AAA.XXX.XXX:8443">https://AAA.XXX.XXX:8443/
ProxyPassReverse / https://AAA.XXX.XXX:8443">https://AAA.XXX.XXX:8443/
LogLevel warn
With the setup as above, I can connect to the Zimbra webmail interface on port 80, but it doesn't redirect me to 443.
Doing a
curl -i http://localhost:8080> on the deployment box gives me the response I expect, but
curl -i -k https://localhost:8443> gives me:
HTTP/1.1 302 Moved Temporarily
Server: Apache-Coyote/1.1
Expires: Tue, 24 Jan 2000 17:46:50 GMT
Cache-control: no-store, no-cache, must-revalidate, max-age=0
Pragma: no-cache
Location: http://localhost:8080/?initMode=https
Content-Type: text/html
Content-Length: 0
Date: Fri, 16 Mar 2007 12:18:20 GMT
Any ideas what's going on?
Thanks in advance.
mezza