Requisiti necessari a priori per installare Lizmap Web Client

Nota

Se volete installare e testare rapidamente Lizmap Web Client in pochi passi, potete seguire queste istruzioni usando Docker e Docker-Compose.

QGIS Server

Avvertimento

Prima di installare la parte QGIS Server, è altamente consigliato di usare la stessa versione tra QGIS Desktop e QGIS Server.

Anche se alcune funzioni potrebbero funzionare, c’è la probabilità che qualche configurazione non funzioni se queste due versioni sono differenti.

La ragione è che QGIS Server versione X potrebbe non essere compatibile con un progetto QGIS fatto con un QGIS Desktop versione Y.

Seguire la documentazione di QGIS su come installare QGIS Server: https://docs.qgis.org/latest/en/docs/server_manual/

Usando un webserver (Apache o Nginx), dovete installare QGIS Server. Con Nginx, il modo migliore è usare spawn-fcgi. Non non usare il fcgiwrap, questa soluzione non è efficiente.

Nella configurazione di Nginx, è bene usare la variabile QGIS_OPTIONS_PATH per una cartella con permessi di scrittura per www-data. Questo è spiegato nella documentazione del server QGIS.

Dovresti anche installare e configurare XVFB menzionato nella Documentazione QGIS. Questo è utile per stampare i PDF. Puoi saltare questa sezione solo se non hai intenzione di stampare PDF sul lato server.

Dopo aver impostato il vostro server web con QGIS-Server, controllate che l’URL di QGIS Server funzioni. Probabilmente otterrete un XML come:

<ServerException>Project file error</ServerException>

Conservate questo URL, lo useremo più tardi nel pannello di amministrazione di Lizmap.

Avvertimento

Noi raccomandiamo vivamente di impostare il QGIS Server su un host virtuale diverso dal Lizmap Web Client. L’URL del QGIS Server dovrebbe rimanere privato, accessibile solo dall’applicazione PHP Lizmap soltanto.

Altrimenti, specialmente dopo l’installazione del plugin Lizmap su QGIS Server, il vostro utente potrebbe essere in grado di accedere a dati privati se bypassano Lizmap, usando direttamente l’URL di QGIS Server.

QGIS Server plugins

Alcuni plugin possono essere aggiunti a QGIS Server. Questo abiliterà alcune funzioni in Lizmap. Non è obbligatorio, ma in alcune situazioni è utile.

Si dovrebbe impostare la variabile d’ambiente QGIS_PLUGINPATH durante l’installazione di QGIS Server o usare quella di default fornita da QGIS. https://docs.qgis.org/latest/en/docs/server_manual/config.html#environment-variables

Suggerimento

Per gestire i plugin di QGIS Server, vi incoraggiamo ad usare qgis-plugin-manager, uno strumento CLI per installare e aggiornare i plugin. https://pypi.org/project/qgis-plugin-manager/

Lizmap QGIS Server plugins

L’aggiunta del plugin Lizmap QGIS Server aggiungerà alcune funzionalità su Lizmap Web Client:

  • recuperare informazioni dal server QGIS.

  • evaluate QGIS Expressions in forms about :

    • vincoli

    • valore predefinito

    • visibilità del gruppo

    • Leggere Form avanzato.

  • controllare i diritti di accesso degli utenti (ACL) per elementi e livelli :

    • filtro per per poligono

    • per attributo

  • utilizzare il Form popup, leggere Form popup.

  • abilitare le variabili @lizmap_user e lizmap_user_groups nei progetti QGIS

  • https://github.com/3liz/qgis-lizmap-server-plugin

  • Il plugin non è richiesto, ma alcune funzioni non funzioneranno come previsto se il plugin non è installato o non aggiornato

  • Il nome del plugin è Lizmap server. Non installare il plugin Lizmap che è il plugin desktop di Python.

Installazione
QGIS Lato Server

Il plugin Lizmap deve essere installato nella cartella corretta di QGIS Server. La variabile d’ambiente deve essere impostata in QGIS Server. Il nome del plugin è Lizmap server.

With QGIS-Plugin-Manager :

# Not correct, this plugin is only for QGIS desktop
# qgis-plugin-manager install Lizmap

# Correct, the plugin designed for QGIS server
qgis-plugin-manager install 'Lizmap server'

Avvertimento

For security reason, to enable all features on the QGIS server side, you must enable the environment variable QGIS_SERVER_LIZMAP_REVEAL_SETTINGS with the value True on QGIS server.

Dovete assicurarvi che questa API http://your.qgis.server.url/lizmap/server.json sia protetta sul vostro webserver. Il meglio è limitare l’accesso al server QGIS http://your.qgis.server.url su un host virtuale, non accessibile su internet. Tutte le richieste al server QGIS saranno inviate da Lizmap Web Client. Il server QGIS non deve essere accessibile dall’esterno. Era già fortemente raccomandato in precedenza di proteggere il server QGIS da internet. Gli utenti devono usare i link WFS/WMS forniti da Lizmap Web Client, così Lizmap può controllare i permessi degli utenti.

Questa variabile esporrà le impostazioni del server come la versione del server QGIS, che è usata da Lizmap Web Client.

Pannello di amministrazione

È necessario che la tabella chiamata «Informazioni sul server» funzioni correttamente nel tuo pannello di amministrazione prima di provare un progetto QGIS.

Se state usando QGIS Server con FCGI, l’URL API Lizmap deve essere vuoto.

Altrimenti, se stai utilizzando Py-QGIS-Server, l’URL dell’API Lizmap deve essere configurato nell’interfaccia di amministrazione. In Py-QGIS-Server, devi pubblicare esplicitamente anche l’API.

A partire dalla versione Py-QGIS-Server 1.8.4, è possibile abilitare l’endpoint API Lizmap con la variabile d’ambiente QGSRV_API_ENDPOINTS_LIZMAP=yes altrimenti, aggiungere la configurazione seguente nel file di configurazione:

[api.endpoints]
lizmap_api=/lizmap

[api.enabled]
lizmap_api=yes

Quindi, con Py-QGIS-Server, se il tuo URL per OWS è http://map:8080/ows/, significa che l’URL per l’endpoint API Lizmap è http://map:8080/lizmap/.

PostgreSQL

PostgreSQL può essere utilizzato per tre scopi diversi in Lizmap:

  • Per memorizzare i dati GIS. Non è necessaria alcuna configurazione sul lato server di Lizmap Web Client, **solo il server PostgreSQL deve essere accessibile dal server Lizmap Web Client e dal server QGIS. È possibile modificare i livelli con Lizmap, ma il livello deve essere memorizzato in PostgreSQL. Vedere Prerequisiti.

  • Per memorizzare gli utenti di Lizmap Web Client e le azioni degli utenti. Lizmap utilizza delle tabelle. Questa impostazione deve essere fatta durante l”installazione di Lizmap.

  • Per usare lizmap_search, vedere Ricerca PostgreSQL. Questa impostazione sul server Lizmap può essere impostata quando serve.