Lizmap Web Clientをインストールする際の必要な要件
注釈
もし、Lizmap Web Clientをいくつかのステップで素早くインストールしてテストしたい場合は、DockerとDocker-Composeを使用して、 以下の手順<https://github.com/3liz/lizmap-docker-compose> の通りに行います。
Server administration knowledge
Installing and maintaining a Lizmap Web Client instance requires some knowledge about system administration.
You will need to be familiar with:
installing a web server (Nginx, Apache...). Lizmap is written in PHP, so you should be familiar with a stack similar to LAMP. This documentation will not cover the Apache section because it can be adapted
reading and setting an environment variable
understanding how processes are launched on a server
reading logs from stderr for QGIS Server
managing a PostgreSQL database
debugging HTTP queries with cURL
These concepts are not explained in the Lizmap Web Client documentation. The documentation is focusing only on specific parts related to Lizmap Web Client.
GIS data and QGS files
Lizmap Web Client does not enforce where to store data on the disk. You are free to store your files where you want on the server.
For instance, you can use /srv/lizmap/data/
. Then, when configuring Lizmap, you can choose the
rootRepositories
variable to define the root repositories for all your data. Lizmap Web Client will display a
dropdown menu showing directories in the root folder.
Otherwise, if you don't want to define a root repository for your GIS data, you will need to use absolute path when defining a new Lizmap repository. There won't be a dropdown menu but a text field instead.
注釈
Lizmap Web Client does not provide any file transfer from your QGIS desktop to your server. You must setup your own way to transfer files between your computer and your server.
QGIS Server
警告
QGIS Server部分をインストールする前に、QGIS DesktopとQGIS Serverで 同じ バージョンを使用することを 強く お勧めします。
一部の機能が動作したとしても、2つのバージョンが 異なる 場合、一部の設定が動作しない可能性があります。
その理由は、QGIS DesktopバージョンYで作成したQGISプロジェクトにQGIS ServerバージョンXが対応できない場合があるからです。
Follow the QGIS Server documentation on how to install QGIS Server.
ウェブサーバ(Apache または Nginx)を使用する場合は、QGIS Server をインストールする必要があります。Nginxでは、 spawn-fcgi
を使用するのが望ましい方法です。 fcgiwrap`
は使用 しない でください。
Nginxの設定では、 QGIS_OPTIONS_PATH
変数に www-data
の書き込み権限のあるフォルダを指定するのが良いでしょう。これらについては、QGIS Serverのドキュメントで説明されています。
また、QGISドキュメントに記載されている XVFB
のインストールと設定も行ってください。これはPDFを印刷するのに使用されます。サーバーサイドでPDFを印刷する予定がない場合にのみ、このセクションをスキップすることができます。
QGIS-ServerでWebサーバを設定した後、QGIS ServerのURLが機能しているかどうかを確認します。おそらく、以下のようなXMLが表示されると思います。
<ServerException>Project file error</ServerException>
このURLは、後でLizmapの管理画面で使用するので、とっておいてください。
警告
我々は ** 強く ** lizmap Web クライアントとは異なる仮想ホストにQGISサーバーを設定することをお勧めします。QGISサーバーのURLは、lizmap PHPアプリケーション ** のみ ** でアクセス可能なプライベートな場所にする必要があります。
それ以外の場合、特にQGIS Serverの ** Lizmap ** プラグインがインストールされた後、ユーザーは直接QGISサーバーURLを使用して、lizmapに渡せばプライベートデータにアクセスできるかもしれません。
QGIS Serverプラグイン
Some plugins can be added to QGIS Server. Please check the QGIS Server documentation about plugins on the server side.
警告
The Lizmap server plugin is required.
Plugins listed below will enable some features in Lizmap Web Client.
Either you should setup the QGIS_PLUGINPATH
environment variable during the installation of QGIS Server
or use the default one provided by QGIS.
Tip
QGIS サーバのプラグインを管理するには、プラグインをインストールおよびアップグレードするための CLI ツールである qgis-plugin-manager を使用することをお勧めします。 https://pypi.org/project/qgis-plugin-manager/
Lizmap server
Required
LizmapはPHP だけでなく 、 QGISサーバー のPythonプラグインである Lizmap server もあります。
重要 lizmap QGISサーバープラグインの詳細については、以下をお読みください. (Lizmap QGISサーバープラグイン)
地図帳
Optional
To enable QGIS layouts based on an atlas
Cadastre
Optional
French use-case only 🇫🇷
Lizmap Cadastre モジュールに必要です
DataPlotly
Optional
Enable the DataPlotly layout item for printing on the QGIS server side
WfsOutputExtension
Optional
ベクター データをエクスポートするときに新しい形式を追加するには
Tip
Look to other QGIS server plugins on the official repository.
But, install only plugins you need you. On QGIS server, plugins are like hooks into QGIS server, they can alter input or output of QGIS server. They can produce unexpected result if you don't know how the plugin works. Please refer to their respective documentation.
Lizmap QGISサーバープラグイン
The Lizmap QGIS Server plugin is required and will add some features on Lizmap Web Client :
QGISサーバーから情報を取得します。
evaluate QGIS Expressions in forms about :
制約
既定値
グループの見え方
Read 高度なフォーム.
地物とレイヤーのユーザーアクセス権(ACL)の確認 :
ポリゴンでフィルタ
属性による
use the Form popup, read QGIS Drag&Drop Form popup.
QGISプロジェクトで
@lizmap_user
とlizmap_user_groups
変数を有効にする
The name of the plugin is
Lizmap server
. Do not install theLizmap
plugin which is the desktop Python plugin.
インストール
QGISサーバー側
Please check the QGIS Server documentation about plugins on the server side.
The Lizmap server plugin, called Lizmap server
, is required in the correct folder for QGIS 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'
警告
You must install the Lizmap server
plugin. The Lizmap
plugin is designed only for QGIS desktop. Do not
keep both on your server.
- For security reason, to enable the API on the QGIS server side, you must enable the environment variable
QGIS_SERVER_LIZMAP_REVEAL_SETTINGS
with the value set toTrue
on QGIS server.
この変数は、Lizmap Web Clientで使用されるQGISサーバーのバージョンなどのサーバー設定を 公開 するものです。
# Apache FCGI example
FcgidInitialEnv QGIS_SERVER_LIZMAP_REVEAL_SETTINGS True
# nginx fastcgi
fastcgi_param QGIS_SERVER_LIZMAP_REVEAL_SETTINGS True;
警告
Webサーバー上でこのAPI http://your.qgis.server.url/lizmap/server.json
が保護されていることを 確認 する必要があります。 一番良い のは、インターネットからアクセスできないバーチャルホスト上のQGISサーバー
http://your.qgis.server.url
へのアクセスを制限することです。QGISサーバーへのすべてのリクエストは、Lizmap Web Clientから送信されます。QGISサーバーは、外部からアクセスできないようにする必要があります。以前からQGISサーバーをインターネットから保護することを 強く 推奨しています。Lizmap Web Clientが提供するWFS/WMSリンクをユーザーが使用する 必要 があり、Lizmapはユーザーの権限を確認することができます。
管理パネル
If your are using QGIS Server with FCGI, the Lizmap API URL must be empty.
Otherwise, if you are using Py-QGIS-Server, the Lizmap API URL must be configured in the administration interface. In Py-QGIS-Server, you must explicitly publish the API as well.
Starting from Py-QGIS-Server version 1.8.4, it's possible to enable the Lizmap API endpoint with the environment variable QGSRV_API_ENDPOINTS_LIZMAP=yes otherwise, add the configuration below in your configuration file :
[api.endpoints]
lizmap_api=/lizmap
[api.enabled]
lizmap_api=yes
Py-QGIS-Serverでは、OWSのURLが http://map:8080/ows/ であれば、Lizmap APIのエンドポイントのURLは http://map:8080/lizmap/ であることを意味します。
PostgreSQL
PostgreSQLは、Lizmapの中で 3つ の異なる目的で使用することができます。
To store GIS data. No configuration is needed on the Lizmap Web Client server side, only the PostgreSQL server must be accessible from the Lizmap Web Client server and QGIS Server. It's possible to edit layers with Lizmap, but the layer must be stored in PostgreSQL. See 前提条件.
To store Lizmap Web Client users and user actions. Lizmap uses tables. This setting must be done when installing Lizmap.
lizmap_search を使用するには、 PostgreSQL検索 を参照してください。Lizmapサーバでのこの設定は、必要なときに設定すればよいです。