Požadavky před instalací webového klienta Lizmap
Poznámka
Pokud chcete rychle nainstalovat a otestovat Lizmap Web Client v několika krocích, můžete postupovat podle těchto instrukcí pomocí Dockeru a Docker-Compose.
Znalost správy serveru
Instalace a údržba instance klienta Lizmap Web Client vyžaduje určité znalosti o správě systému.
Potřebujete znát:
instalace webového serveru (Nginx, Apache…). Lizmap je napsán v jazyce PHP, takže byste měli znát stack podobný LAMP. Tato dokumentace se nebude zabývat sekcí Apache, protože ji lze přizpůsobit
načtení a nastavení proměnné prostředí
pochopení způsobu spouštění procesů na serveru
čtení protokolů z stderr pro QGIS Server
správa databáze PostgreSQL
ladění dotazů HTTP pomocí cURL
Tyto pojmy nejsou v dokumentaci webového klienta Lizmap vysvětleny. Dokumentace se zaměřuje pouze na konkrétní části týkající se Lizmap Web Client.
Data GIS a soubory QGS
Lizmap Web Client nevynucuje, kam se mají data na disku ukládat. Soubory si můžete na serveru uložit, kam chcete.
Můžete například použít /srv/lizmap/data/
. Při konfiguraci Lizmap pak můžete zvolit proměnnou rootRepositories
a definovat kořenová úložiště pro všechna data. Webový klient Lizmap zobrazí rozbalovací nabídku s adresáři v kořenové složce.
V opačném případě, pokud nechcete definovat kořenové úložiště pro data GIS, musíte při definování nového úložiště Lizmap použít absolutní cestu. Nebude k dispozici rozbalovací nabídka, ale místo toho textové pole.
Poznámka
Lizmap Web Client neumožňuje přenos souborů z pracovní plochy QGIS na server. Musíte si nastavit vlastní způsob přenosu souborů mezi počítačem a serverem.
QGIS Server
Varování
Před instalací části QGIS Server se velmi důrazně doporučuje používat stejnou verzi QGIS Desktop a QGIS Server.
I když některé funkce mohou fungovat, je pravděpodobné, že některé konfigurace nebudou fungovat, pokud jsou tyto dvě verze rozdílné.
Důvodem je, že QGIS Server verze X nemusí umět projekt QGIS vytvořený pomocí QGIS Desktop verze Y.
Postupujte podle dokumentace QGIS Server, jak nainstalovat QGIS Server.
Při použití webového serveru (Apache nebo Nginx) je nutné nainstalovat QGIS Server. V případě Nginxu se upřednostňuje použití spawn-fcgi
. Nepoužívejte** fcgiwrap
, toto řešení není efektivní.
V konfiguraci Nginxu je dobré použít proměnnou QGIS_OPTIONS_PATH
pro složku s právy zápisu pro www-data
. Ty jsou vysvětleny v dokumentaci k serveru QGIS.
Měli byste si také nainstalovat a nakonfigurovat XVFB
uvedený v dokumentaci QGIS. To je užitečné pro tisk PDF. Tuto část můžete přeskočit pouze v případě, že neplánujete tisknout PDF na straně serveru.
Po nastavení webového serveru s QGIS-Serverem zkontrolujte, zda je URL adresa QGIS Serveru funkční. Pravděpodobně se zobrazí XML jako:
<ServerException>Project file error</ServerException>
Tuto adresu URL si ponechte, budeme ji používat později v panelu správce Lizmap.
Varování
Důrazně doporučujeme nastavit QGIS Server na jiném virtuálním hostiteli než Lizmap Web Client. Adresa URL serveru QGIS by měla zůstat neveřejná, přístupná pouze aplikaci Lizmap PHP.
V opačném případě, zejména po instalaci zásuvného modulu Lizmap na server QGIS, může mít uživatel přístup k soukromým datům, pokud obejde Lizmap pomocí přímé adresy URL serveru QGIS.
Zásuvné moduly QGIS Server
Některé zásuvné moduly lze přidat do serveru QGIS. Ohledně zásuvných modulů na straně serveru se podívejte do dokumentace QGIS Serveru.
Varování
Je vyžadován zásuvný modul Lizmap server.
Níže uvedené zásuvné moduly povolí některé funkce webového klienta Lizmap.
Buď byste měli nastavit proměnnou prostředí QGIS_PLUGINPATH
během instalace QGIS Serveru, nebo použít ``defaultní proměnnou poskytovanou QGISem <https://docs.qgis.org/latest/en/docs/server_manual/config.html#environment-variables>`_.
Tip
Pro správu zásuvných modulů serveru QGIS doporučujeme používat qgis-plugin-manager, nástroj CLI pro instalaci a aktualizaci zásuvných modulů. https://pypi.org/project/qgis-plugin-manager/
Lizmap server
Vyžadováno
Lizmap není jen aplikace PHP, existuje také plugin Python pro QGIS Server s názvem Lizmap server.
Důležité, přečtěte si níže další informace o zásuvném modulu Lizmap QGIS Server. (Zásuvný modul Lizmap QGIS Server)
AtlasPrint
Volitelné
Zapnutí rozvržení QGIS na základě atlasu
Cadastre
Volitelné
Pouze pro francouzské případy použití 🇫🇷
Potřebné pro modul Lizmap Cadastre
DataPlotly
Volitelné
Povolení položky rozvržení DataPlotly pro tisk na straně serveru QGIS
WfsOutputExtension
Volitelné
Přidání nového formátu při exportu vektorových dat
Tip
Podívejte se na další zásuvné moduly serveru QGIS na official repository.
Nainstalujte si však pouze zásuvné moduly, které potřebujete vy. Na serveru QGIS jsou pluginy jako háčky do serveru QGIS, mohou měnit vstup nebo výstup serveru QGIS. Pokud nevíte, jak zásuvný modul funguje, mohou přinést neočekávaný výsledek. Prostudujte si prosím jejich příslušnou dokumentaci.
Zásuvný modul Lizmap QGIS Server
Zásuvný modul Lizmap QGIS Server je vyžadován a přidá některé funkce do webového klienta Lizmap :
načítání informací ze serveru QGIS.
vyhodnoťte QGIS Expressions ve formulářích o :
omezení
výchozí hodnota
viditelnost skupiny
Přečtěte si Rozšířený formulář.
zkontrolujte přístupová práva uživatele (ACL) pro funkce a vrstvy :
filtrovat podle polygonu
podle atributu
použít vyskakovací okno Form, čtěte Vyskakovací okno formuláře QGIS Drag&Drop.
povolení proměnných
@lizmap_user
alizmap_user_groups
v projektech QGIS.
Název zásuvného modulu je
Lizmap server
. Neinstalujte zásuvný modulLizmap
, který je desktop zásuvným modulem Pythonu.
Instalace
Strana QGIS Server
Podívejte se prosím do dokumentace QGIS Server o zásuvných modulech na straně serveru.
Zásuvný modul Lizmap server, nazvaný Lizmap server
, je vyžadován ve správné složce pro QGIS Server.
Pomocí 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'
Varování
Je nutné nainstalovat zásuvný modul Lizmap server
. Zásuvný modul Lizmap
je určen pouze pro QGIS desktop. Nemějte na serveru oba dva.
- Chcete-li povolit rozhraní API na straně serveru QGIS, musíte z bezpečnostních důvodů povolit proměnnou prostředí
QGIS_SERVER_LIZMAP_REVEAL_SETTINGS
s hodnotou nastavenou naTrue
na serveru QGIS.
Tato proměnná odhalí nastavení serveru, například verzi serveru QGIS, kterou používá Lizmap Web Client.
# Apache FCGI example
FcgidInitialEnv QGIS_SERVER_LIZMAP_REVEAL_SETTINGS True
# nginx fastcgi
fastcgi_param QGIS_SERVER_LIZMAP_REVEAL_SETTINGS True;
Varování
Musíte se ujistit, že toto rozhraní API http://your.qgis.server.url/lizmap/server.json
je na vašem webovém serveru chráněno. Nejlepší** je omezit přístup k serveru QGIS http://your.qgis.server.url
na virtuálním hostiteli, který není přístupný z internetu. Všechny požadavky na server QGIS budou odesílány prostřednictvím webového klienta Lizmap. Server QGIS nesmí být přístupný zvenčí. Již dříve bylo velmi doporučeno chránit server QGIS před internetem. Uživatelé musí používat odkazy WFS/WMS poskytované Lizmap Web Client, aby Lizmap mohl kontrolovat oprávnění uživatelů.
Administrační panel
Pokud používáte QGIS Server s FCGI, musí být adresa URL rozhraní Lizmap API prázdná.
V opačném případě, pokud používáte Py-QGIS-Server, musí být adresa API Lizmap konfigurována v administračním rozhraní. V systému Py-QGIS-Server musíte rozhraní API také explicitně zveřejnit.
Od verze Py-QGIS-Server 1.8.4 je možné povolit koncový bod Lizmap API pomocí proměnné prostředí QGSRV_API_ENDPOINTS_LIZMAP=yes, v opačném případě přidejte níže uvedenou konfiguraci do konfiguračního souboru :
[api.endpoints]
lizmap_api=/lizmap
[api.enabled]
lizmap_api=yes
Pokud je adresa URL pro OWS http://map:8080/ows/, znamená to, že adresa URL pro koncový bod Lizmap API je http://map:8080/lizmap/.
PostgreSQL
V aplikaci Lizmap lze PostgreSQL použít pro tři různé účely:
Ukládání dat GIS. Na straně serveru Lizmap Web Client není potřeba žádná konfigurace, ze serveru Lizmap Web Client a serveru QGIS musí být přístupný pouze** server PostgreSQL. Pomocí Lizmap je možné vrstvy upravovat, ale musí být uloženy v PostgreSQL. Viz Předpoklady.
Uložení uživatelů a uživatelských akcí klienta Lizmap Web Client. Lizmap používá tabulky. Toto nastavení je třeba provést při instalaci Lizmap.
Chcete-li použít lizmap_search, viz Hledání v PostgreSQL. Toto nastavení na serveru Lizmap lze nastavit, když ho potřebujete.