29
contributi
Nessun oggetto della modifica |
|||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Wheezy}} | |||
== Introduzione == | == Introduzione == | ||
Firefox, come Iceweasel, permette la sincronizzazione di alcuni contenuti del browser tra più installazioni degli stessi. Tramite Sync Server è possibile sincronizzare '''Bookmarks''', '''Tabs''', '''Estensioni''' e altre piccole cose. Mozilla permette la sincronizzazione gratuita su dei loro server. In questa guida installeremo e configureremo un nostro Sync Server che lavorerà sotto [[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5 | Apache]] ed useremo MySql come database per l' archiviazione (è possibile utilizzare anche SQLite). | Firefox, come Iceweasel, permette la sincronizzazione di alcuni contenuti del browser tra più installazioni degli stessi. Tramite Sync Server è possibile sincronizzare '''Bookmarks''', '''Tabs''', '''Estensioni''' e altre piccole cose. Mozilla permette la sincronizzazione gratuita su dei loro server. In questa guida installeremo e configureremo un nostro Sync Server che lavorerà sotto [[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5 | Apache ]] ed useremo MySql come database per l' archiviazione (è possibile utilizzare anche SQLite). | ||
<br> | <br /> | ||
In questa guida tratteremo la versione 1.5 del sync-server, la quale funziona con Firefox/Iceweasel 29 e successivi (presenti da Wheezy in poi). Per versioni precedenti rifarsi alla [https://docs.services.mozilla.com/howtos/run-sync.html#howto-run-sync11 seguente guida] | In questa guida tratteremo la versione 1.5 del sync-server, la quale funziona con Firefox/Iceweasel 29 e successivi (presenti da Wheezy in poi). Per versioni precedenti rifarsi alla [https://docs.services.mozilla.com/howtos/run-sync.html#howto-run-sync11 seguente guida] | ||
<br /> | |||
<br /> | |||
Nella guida supporremo che il computer sul quale andremo ad installare il sync-server avrà IP '''192.168.1.50''' | Nella guida supporremo che il computer sul quale andremo ad installare il sync-server avrà IP '''192.168.1.50''' | ||
Riga 12: | Riga 13: | ||
# apt-get install python-dev git-core python-virtualenv | # apt-get install python-dev git-core python-virtualenv | ||
</pre> | </pre> | ||
Successivamente clonare il repository git di Mozilla contenente il sync-server, per fare questo ho deciso di lavorare in | Successivamente clonare il repository git di Mozilla contenente il sync-server, per fare questo ho deciso di lavorare in ''/opt'': | ||
<pre> | <pre> | ||
# cd /opt | # cd /opt | ||
Riga 20: | Riga 21: | ||
</pre> | </pre> | ||
Il comando <code>make build</code> creerà un virtualenv Python in cui verranno successivamente installate tutte le dipendenze richieste dal server. | Il comando <code>make build</code> creerà un virtualenv Python in cui verranno successivamente installate tutte le dipendenze richieste dal server. | ||
<br> | <br /> | ||
Terminata la compilazione verrà creata una cartella | Terminata la compilazione verrà creata una cartella ''local/bin'' in cui è presente il binario '''pserve''', utile a fini di debug poichè permette di lanciare il sync-server sfruttando un web-server built-in. | ||
<br> | <br /> | ||
Per verificare il corretto funzionamento del sync-server sarà sufficiente dare il seguente comando: | Per verificare il corretto funzionamento del sync-server sarà sufficiente dare il seguente comando: | ||
<pre> | <pre> | ||
Riga 30: | Riga 31: | ||
=== Configurazione === | === Configurazione === | ||
La configurazione del sync-server avviene tramite il file | La configurazione del sync-server avviene tramite il file ''syncserver.ini'', di seguito un esempio di tale file: | ||
<pre> | <pre> | ||
[server:main] | [server:main] | ||
Riga 76: | Riga 77: | ||
</pre> | </pre> | ||
Per prima cosa andremo a modificare il parametro | Per prima cosa andremo a modificare il parametro ''public_url'' il quale andrà settato su un URL visibile dalla tua rete. In questa prima parte della guida, a scopo di test, supporremo di eseguire il server in locale in una rete di computer con indirizzo del tipo '''192.168.1.x'''. | ||
<br> | <br /> | ||
Apriamo quindi il file con il nostro editor preferito: | Apriamo quindi il file con il nostro editor preferito: | ||
<pre> | <pre> | ||
Riga 87: | Riga 88: | ||
public_url = http://192.168.1.50:5000 | public_url = http://192.168.1.50:5000 | ||
</pre> | </pre> | ||
Abbiamo specificato la porta ''5000'' perchè di default il web-server built-in è attivo su tale porta. Ovviamente se vogliamo eseguire il server su una differente porta basterà specificarlo all' avvio del server modificando di conseguenza la porta nel parametro < | Abbiamo specificato la porta ''5000'' perchè di default il web-server built-in è attivo su tale porta. Ovviamente se vogliamo eseguire il server su una differente porta basterà specificarlo all' avvio del server modificando di conseguenza la porta nel parametro ''public_url''. | ||
<br /> | |||
<br /> | |||
Di default il sync-server utilizza un database in-memory per lo storage dei dati, questo significa che al riavvio del dispositivo tutti i dati memorizzati verranno cancellati. Per questo motivo il sync-server prevede lo storage dei dati tramite database MySql o SQLite accettando qualunque URI database di [http://www.sqlalchemy.org/ SQLAlchemy]. Per questa parte non specificheremo alcun tipo di database. | Di default il sync-server utilizza un database in-memory per lo storage dei dati, questo significa che al riavvio del dispositivo tutti i dati memorizzati verranno cancellati. Per questo motivo il sync-server prevede lo storage dei dati tramite database MySql o SQLite accettando qualunque URI database di [http://www.sqlalchemy.org/ SQLAlchemy]. Per questa parte non specificheremo alcun tipo di database. | ||
Riga 101: | Riga 103: | ||
serving on 0.0.0.0:5000 view at http://127.0.0.1:5000 | serving on 0.0.0.0:5000 view at http://127.0.0.1:5000 | ||
</pre> | </pre> | ||
significa che il server è funzionante ed in ascolto sulla porta | Un simile messaggio significa che il server è funzionante ed in ascolto sulla porta 5000 del proprio computer. | ||
=== Configurare Firefox/Iceweasel === | === Configurare Firefox/Iceweasel === | ||
Come accennato in precedenza per poter dire a Firefox/Iceweasel di connettersi al proprio sync-server è necessario modificare la voce | Come accennato in precedenza per poter dire a Firefox/Iceweasel di connettersi al proprio sync-server è necessario modificare la voce ''services.sync.tokenServerURI'' in '''about:config''' cambiando l' url del server di sincronizzazione con l' indirizzo del server nella propria subnet. Nel nostro caso quindi sarà necessario cambiare l'url nel seguente modo: | ||
<pre> | <pre> | ||
services.sync.tokenServerURI: http://192.168.1.50:5000/token/1.0/sync/1.5 | services.sync.tokenServerURI: http://192.168.1.50:5000/token/1.0/sync/1.5 | ||
</pre> | </pre> | ||
Per verificare il funzionamento del server sarà sufficiente andare all' indirizzo http://192.168.1.50:5000/ e vedere se compare la scritta ''it works!'' | Per verificare il funzionamento del server sarà sufficiente andare all' indirizzo http://192.168.1.50:5000/ e vedere se compare la scritta ''it works!'' | ||
<br> | <br /> | ||
A questo punto sarà sufficiente creare un account di sincronizzazione andando su '''Preferences''' e successivamente sul tab '''Sync'''. Se già si dispone di un account di sincronizzazione sarà sufficiente effettuare il login, altrimenti creeremo un nuovo account e successivamente effettuiamo il login. Eseguiamo il login con lo stesso account su un altra installazione di Firefox/Iceweasel, modificando anche in questo caso il parametro | A questo punto sarà sufficiente creare un account di sincronizzazione andando su '''Preferences''' e successivamente sul tab '''Sync'''. Se già si dispone di un account di sincronizzazione sarà sufficiente effettuare il login, altrimenti creeremo un nuovo account e successivamente effettuiamo il login. Eseguiamo il login con lo stesso account su un altra installazione di Firefox/Iceweasel, modificando anche in questo caso il parametro ''services.sync.tokenServerURI'' e controlliamo se effettivamente avviene la sincronizzazione degli oggetti selezionati nella tab ''Sync'' delle preferenze di Firefox/Iceweasel | ||
== Sync Server + Apache2 == | |||
Il web-server built-in del sync-server è utile per effettuare test sul sistema oppure se utilizzato in situazioni molto ristrette, ad esempio sincronizzando solo i computer di una rete locale. | |||
[[ | <br /> | ||
Se vogliamo utilizzare il sync-server accedendoci dall' esterno oppure condividendolo tra più utenti è consigliato far girare il server di sincronizzazione sotto ad un instanza di un web-server come Apache2. I motivi possono essere molti, uno dei più importanti è il poter utilizzare il protocollo [[http://guide.debianizzati.org/index.php/Installare_un_ambiente_LAMP:_Linux,_Apache2,_SSL,_MySQL,_PHP5#Configurazione_di_SSL | SSL]] per rendere sicure le connessioni tra client e server, un altro motivo è la possibilità di sostenere più facilmente un numero elevato di connessioni. |
contributi