Android Client and Sync with OwnCloud on NGINX ============================================== :author: Aaron Ball :email: nullspoon@iohq.net I have been looking for a good way to move completely from Google for quite some time. Many of the things I am dependant upon them for are pretty vital for day to day operations. One of these is of course contact and calendar syncing. Currently, my solution to that problem is http://www.egroupware.org[EGroupware] for my server using syncml through http://funambol.com[Funambol] to synchronize my contacts from my web server to my Android phone. This solution is bulky taking about 80 MB on my server for the PHP code. Though this works, it is hardly ideal. That's why I was so excited to try out http://owncloud.org[ownCloud]. Their Android client is still definitely a work in progress, but at least it's something (not to mention that they use standards-based services, so several other sync apps for Android can work with ownCloud). Now, I run http://nginx.org[NGINX] on my web server which does things a little differently than Apache, especially in regards to .htaccess files. Despite that though, out of the box (or tarball) ownCloud seems to work perfectly. However, when you try to sync up your Android phone via http://owncloud.org/support/android/[their dandy client], you get this obscure error ---- Wrong path given ---- Additionally, when you check your server access logs, you'll see ---- Requested uri (/remote.php/webdav.php) is out of base uri (/remote.php/webdav/) ---- This is most likely because you need two location directives in your NGINX conf file (or vhost file if you're doing things that way). To fix this just put the following two things in your said config file (This assumes your own cloud server is running at ---- location /owncloud { index index.php; try_files $uri $uri/ @owncloud } location @owncloud { rewrite ^/owncloud/(.*)$ /owncloud.php/index.php?p=$1 last; } ---- And that should do it for you! Category:Nginx Category:Android // vim: set syntax=asciidoc: