-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdatabase_syncing.html
More file actions
70 lines (63 loc) · 3.11 KB
/
database_syncing.html
File metadata and controls
70 lines (63 loc) · 3.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
---
layout: default
title: Database Syncing
---
<h2>Database Syncing</h2>
<p>
Database syncing allows you to keep your database in sync across multiple devices. You can sync your database using either Dropbox or a private HTTP server.
</p>
<h3>Sync Using Dropbox</h3>
<p>
<a href="http://www.dropbox.com">Dropbox</a> is the easiest way to sync your database across multiple devices. All you need to do is save your UPM database file to your Dropbox folder. Dropbox takes care of syncing the database to all your devices.
</p>
<p>
For the best experience on Windows/Mac/Unix ensure you're using UPM 1.9 or later. This version monitors the currently open database file and alerts you if it changes.
</p>
<p>
If you're using an Android device you'll need place your database file in a special Dropbox folder (<tt><Dropbox Root>/Apps/UPM</tt>) to ensure UPM can see it. See <a href="upm_android_userguide.html#sync_using_dropbox">Using Dropbox on Android</a> for more details.
</p>
<a href="#sync_http"></a>
<h3>Sync Using HTTP</h3>
<p>
Using a HTTP/HTTPS server is a little more complicated than using Dropbox. You'll need your own webserver capable of hosting <A href="http://en.wikipedia.org/wiki/PHP">PHP</a> scripts. If you don't already have one you'll need to purchase a <a href="http://en.wikipedia.org/wiki/Web_hosting_service">web hosting service</a>. A quick google for "<a href="http://www.google.com/search?q=web+hosting">web hosting</a>" should throw up quite a few options.
</p>
<p>
The webserver should be accessible from each machine and device you want to share the database between.
</p>
<h4>Server Side Steps</h4>
<p>
At present UPM supports HTTP and HTTPS. The URL can be password protected by basic authentication.
</p>
<p>
Two PHP files are required on the webserver, <b>deletefile.php</b> and <b>upload.php</b>. Both of these files come packaged with the desktop version of UPM in the <b>.\server\http</b> directory. Alternatively they can be downloaded directly from <a href="https://github.com/adrian/upm-swing/tree/master/server/http">here</a>.
</p>
<p>
The directory containing your password database along with the deletefile.php and upload.php scripts should be secured using,
<ul>
<li>HTTPS</li>
<li>Basic Authentication</li>
</ul>
Sample Apache config,
<pre>
<Directory "/var/www/upmdir">
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/httpd/.htpasswd
Require valid-user
</Directory>
</pre>
To create the password file use,
<pre>htpasswd -c /etc/httpd/.htpasswd <user name></pre>
(your hosting provider may provide a GUI for doing this)
</p>
<p>
In UPM create an account with the same username and password as created with htpasswd.
</p>
<p>
In your UPM "Database Properties" select the account you just created for "Authtentication Credentials".
</p>
<h4>Client Side Steps</h4>
<ul>
<li><a href="upm_android_userguide.html#sync_using_http">Android version of UPM</a></li>
<li><a href="upm_swing_userguide.html#http_database_syncing">Desktop version of UPM</a></li>
</ul>