ActiveSync with Nginx and Z-push

ActiveSync with Nginx and Z-pushПривет,

В тази публикация ще споделя как бързо и лесно можем да си направим ActiveSync синхронизация с Nginx и Z-push.

За целта първо трябва да изтеглим последната версия на z-push от z-push.org и да копираме съдъражнието й в папка /usr/share/z-push/ :

mkdir -p /usr/share/z-push
mkdir -p /var/log/z-push/
cd /tmp/
wget http://download.z-push.org/final/2.3/z-push-2.3.4.tar.gz
tar zxvf z-push-2.3.4.tar.gz
cp -R z-push-2.3.4/* /usr/share/z-push/

Следва конфигурирането на z-push

1. В config.php променяме следните редове :

define('TIMEZONE', 'Europe/Sofia');
define('BACKEND_PROVIDER', 'BackendIMAP');

2. В /usr/share/z-push/backend/imap/config.php променяме следните редове :

define('IMAP_FOLDER_CONFIGURED', true);
define('IMAP_SERVER', 'localhost');

Nginx виртуален хост

За да може ActiveSync-a да сработи, е нужно да направим виртуален хост в nginx-a ни. Ето го и него :

server {
listen 443;
server_name z.root.bg;

ssl on;
ssl_certificate /etc/letsencrypt/live/z.root.bg/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/z.root.bg/privkey.pem;

root /usr/share/z-push;
index index.php;

location / {
try_files $uri $uri/ index.php;
}

location /Microsoft-Server-ActiveSync {
rewrite ^(.*)$ /index.php last;
}

location ~ .php$ {
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param HTTPS on;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_pass unix:/var/run/php5-fpm.sock;
}
}

Следва рестарт на nginx сървъра и тестване на виртуалния хост.

Ако всичко е ок, трябва да излезе диалогов прозорец с потребителско име ( мейл адрес ) и парола. Въвеждаме нашите и трябва да ни излезе следното съобщение :

Z-Push - Open Source ActiveSync

Version 2.3.4
GET not supported

This is the Z-Push location and can only be accessed by Microsoft ActiveSync-capable devices

Това означава, че всичко е ок и можем да си настройм пощата през мобилното ни устройство, като за тип account избираме Exchange и въвеждаме данните ни. За сървър въвеждаме нашия Z-push сървър ; z.root.bg.

Общо взето това е.