Utente:Frenko/Draft: differenze tra le versioni

nessun oggetto della modifica
Nessun oggetto della modifica
Riga 1: Riga 1:
{{Stub}}{{Versioni compatibili|Wheezy}}
{{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 <code>/opt</code>:
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 <code>/opt/syncserver/local/bin</code> in cui è presente il binario <code>pserve</code>, utile a fini di debug poichè permette di lanciare il sync-server sfruttando un web-server built-in.
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 <code>syncserver.ini</code>, di seguito un esempio di tale 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 <code>public_url</code> 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'''.
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 <code>public_url</code>.
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 ''5000'' del proprio computer.
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 <code>services.sync.tokenServerURI</code> 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:
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 <code>services.sync.tokenServerURI</code> e controlliamo se effettivamente avviene la sincronizzazione degli oggetti selezionati nella tab ''Sync'' delle preferenze di Firefox/Iceweasel
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
 


{{Autori
== Sync Server + Apache2 ==
|Autore= [[Utente:Frenko|Frenko]] 12:47, 15 apr 2015 (CEST)
}}


[[Categoria: Web server]]
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.
[[Categoria:Database server]]
<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.
29

contributi