View Full Version : ISPConfig + Z-Push?

14th March 2010, 03:56
Hi could anyone help me to configure z-push on IPSConfig 3?

Z-Push is a free, opensource push-imap project.



15th March 2010, 10:29
I'm using z-push on my ISPconfig3 servers.
Let me know where you got stuck with the setup. It's really easy to do so, that I would not know what your problem is.

15th March 2010, 11:23
Hi Edge,
If you're willing to do so.
Please provide the information here how you did it.
I think lots of users here (including myself) are interested in your solution.

15th March 2010, 12:42
This install of Z-Push is on a "The Perfect Server - Debian Lenny (Debian 5.0) (http://www.howtoforge.com/perfect-server-debian-lenny-ispconfig3)" setup

I'm using z-push on my 1st website of the server (client1 / web1)
You will need to change the "/var/clients/client1/web1/web/" part to your own settings if different.

For z-push to work you will need to have imap enabled for the user.

A quote from a famous person: This document comes without warranty of any kind! I want to say that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!

-- Lets get started with installing z-push. --

Make sure that you are doing this as su user (root)
Also make sure that you are using the latest version of z-push.
More info @ http://z-push.sourceforge.net/soswp/index.php?pages_id=39&t=Download
At time of writing this "howto" it was version z-push-[i]1.3RC2

* Download, un-tar and move directory
1) cd /tmp
2) wget http://download.berlios.de/z-push/z-push-1.3RC2.tar.gz
3) tar zxf z-push-1.3RC2.tar.gz
4) mv z-push /var/clients/client1/web1/web/

* Edit the z-push/config.php file.
5) cd /var/clients/client1/web1/web/z-push
6) nano config.php
- Make sure that date_default_timezone_set (line 14) is set to your time zone
- Set $BACKEND_PROVIDER to BackendIMAP (line 49)

* Remove the file /backend/ics.php
7) rm /var/clients/client1/web1/web/z-push/backend/ics.php

* Make sure that directory z-push/state is writable for your webserver
8) chmod 777 /var/clients/client1/web1/web/z-push/state

* Create a .htaccess file
9) nano .htaccess

And add this to it.
php_flag magic_quotes_gpc off
php_flag register_globals off
php_flag magic_quotes_runtime off
php_flag short_open_tag on

You can also add the above to the Apache directives in ISPconfig3

* Add Alias /Microsoft-Server-ActiveSync /var/clients/client1/web1/web/z-push/index.php to your httpd.conf
10) cd /etc/apache2/
11) nano httpd.conf
At the end of httpd.conf add:
Alias /Microsoft-Server-ActiveSync /var/clients/client1/web1/web/z-push/index.php

* Restart Apache.
12) /etc/init.d/apache2 restart

* Set website PHP mode to: Mod-PHP
13) Login to ISPconfig3 and go the the tab Sites > Domain. Now select the website that you are installing z-push to, and set PHP to Mod-PHP. When done click Save.

Now go to www.your-website.com/Microsoft-Server-ActiveSync, and with a bit of luck you will get a login popup screen.
Use the email address and password from a IMAP user account.
After this you will get an error:GET not supported
This is the z-push location and can only be accessed by Microsoft ActiveSync-capable devices.

This error is correct, as you are accessing the z-push by web browser.
All you need to do now is setup your mobile phone, and you've got push working!
The URL of the server to use in your mobile phone will be www.your-website.com.
You do not need to add z-push or Microsoft-Server-ActiveSync

If you are having problems, than you can create a 'debug.txt' in the root directory of z-push.
The debug.txt will log all activity, and give you a lot of extra info to find the problem(s).
touch /var/clients/client1/web1/web/z-push/debug.txt
chmod 777 /var/clients/client1/web1/web/z-push/debug.txt

Let me know if you need more help.

Best regards from Czech where I'm stuck in a hotel at the moment. (snowed in)

15th March 2010, 22:27
Brilliant! works perfect!

thanks very much!