Contrary to what I noted earlier http fmos…

Contrary to what I noted earlier, `mod_pagespeed` may be used together with Z-Push (thanks to Grayson Peddie for the hint). Any interference with the relevant parts can be prevented by the following lines in the module configuration:

    ModPagespeedDisallow */z-push*
    ModPagespeedDisallow */Microsoft-Server-ActiveSync*

source: Z-Push forum thread

Android Z-Push

For weeks I had the intention to use my Android phone with Zarafa and Z-Push. However, my phone always reported that protocol version provided by the server would not be supported. I had a day off today and dug into the code (first Z-Push, then CyanogenMod 10) to track down the problem. It seemed like there would be a problem with the OPTIONS request in ActiveSync and the headers sent by Z-Push. I ended up using Fiddler to inspect the HTTPS traffic, in particular the headers and it turned out that Z-Push did not send the headers to identify the ActiveSync protocol. But the PHP-code (already messed with debugging output of my own) did send the headers.

Surprisingly, a minimal PHP script that did nothing by sending headers also worked. After a while it seems like the PHP output buffering (ob_start) dropped the headers, but then ob_clean or _flush at before and/or after the header call didn’t change anything.

Staring at the Fiddler traffic of the working testing code brought the saving idea: I had mod_pagespeed enabled (which I noticed, because it also added a header of its own). Turning it off made everything work!

Conclusion: Z-Push is incompatible with mod_pagespeed!

Synchronisation: „works for me“


This article has multiple motivations. First, it is a follow-up to an article by Patrick Ohly (author of syncEvolution). As such it illustrates my own experience with his software, but also is meant as a way to show my gratitude and give kudos to him and all contributors of syncEvolution. Second, but this is somehow related to the aforementioned article, it should show that synchronisation [of PIM data] can work reliably and as such it opposes a wide spread opinion.


What I’ll try to show is how I’m successfully synchronising my notebook, my workstation (both Fedora 15) and my Android phone using the SyncML protocol.

Disclaimer: on the phone, I’m currently using a non-free piece of software from Synthesis AG for the only reason that the free Funambol client doesn’t play well with my self-signed SSL certificate (yet!?).