Viktigt
Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 100.00%.
5. Tillägg
5.1. Lista över tillägg
Tillägg kan också installeras på QGIS Server.
Vissa tillägg som är utformade för server finns på den officiella QGIS repository.
Installera bara tillägg som du behöver för ditt eget ändamål. På QGIS-servern är tillägg som krokar i QGIS-servern, de kan ändra in- eller utdata från QGIS-servern. De kan ge oväntade resultat om du inte vet hur tillägget fungerar. Se deras respektive dokumentation eller programmet som behöver QGIS-servertillägg för att veta vilket plugin som kan vara användbart för dig.
5.2. Placering av tillägg
Som standard, på Debian-baserade system, kommer QGIS Server att leta efter tillägg som finns i /usr/lib/qgis/tillägg
. Standardvärdet visas i loggarna när QGIS Server startas. Det är möjligt att ange en anpassad sökväg genom att definiera miljövariabeln QGIS_PLUGINPATH
i webbserverns konfiguration.
5.3. Installation
5.3.1. Manuellt med en ZIP
Om du t.ex. vill installera tillägget HelloWorld för att testa servern med hjälp av en specifik mapp måste du först skapa en katalog för servertillägg. Detta kommer att anges i konfigurationen av den virtuella värden och skickas vidare till servern via en miljövariabel:
mkdir -p /var/www/qgis-server/plugins
cd /var/www/qgis-server/plugins
wget https://github.com/elpaso/qgis-helloserver/archive/master.zip
unzip master.zip
mv qgis-helloserver-master HelloServer
Varning
Enligt dess beskrivning är HelloServer plugin utformat för utvecklings- och demonstrationsändamål. Behåll inte detta plugin för produktion om du inte behöver det.
5.3.2. Med ett kommandoradsverktyg
Om du behöver installera och regelbundet uppgradera tillägg som lagras i QGIS tilläggsarkiv, kan du använda QGIS-Plugin-Manager. Det är ett verktyg som hjälper dig att hantera tillägg från kommandoraden.
Installationen sker med hjälp av pip. Att installera i en virtuell miljö är en bra metod men inget krav:
pip3 install qgis-plugin-manager
För att uppgradera verktyget:
pip3 install --upgrade qgis-plugin-manager
Sedan kan du använda den körbara filen qgis-plugin-manager
från kommandoraden:
cd /var/www/qgis-server/plugins
qgis-plugin-manager list
QGIS server version 3.19.0
List all plugins in /var/www/qgis-server/plugins
------------------------------------------------------------------------------------------------------------------------------------------------------------
| Folder | Name | Version | Experimental | QGIS min | QGIS max | Author | Action ⚠ |
------------------------------------------------------------------------------------------------------------------------------------------------------------
|wfsOutputExtension |wfsOutputExtension |1.6.2 | |3.0 | |3Liz | |
|qgis_server_render_geojson |GeoJson Renderer |v0.4 | |3.4 | |Matthias Kuhn (OPENGIS.ch) | |
|DataPlotly |Data Plotly |3.7.1 | |3.4 |3.98 |Matteo Ghetta (Faunalia) |Upgrade to 3.8.1 |
------------------------------------------------------------------------------------------------------------------------------------------------------------
Vi rekommenderar att du läser den fullständiga dokumentationen i filen ”Readme” <https://github.com/3liz/qgis-plugin-manager/blob/master/README.md>`_ för att få veta hur du installerar eller uppgraderar tillägg med det här verktyget.
5.4. Konfiguration av HTTP-server
5.4.1. Apache
För att kunna använda servertillägg behöver FastCGI veta var de ska leta. Så vi måste ändra Apache-konfigurationsfilen för att ange miljövariabeln QGIS_PLUGINPATH
till FastCGI:
FcgidInitialEnv QGIS_PLUGINPATH "/var/www/qgis-server/plugins"
Dessutom krävs en grundläggande HTTP-auktorisering för att kunna använda HelloWorld-tillägget som introducerades tidigare. Så vi måste uppdatera Apache-konfigurationsfilen en sista gång:
# Needed for QGIS HelloServer plugin HTTP BASIC auth
<IfModule mod_fcgid.c>
RewriteEngine on
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
Starta sedan om Apache:
systemctl restart apache2
5.5. Så här använder du ett tillägg
Testa servern med tillägget HelloWorld:
wget -q -O - "http://localhost/cgi-bin/qgis_mapserv.fcgi?SERVICE=HELLO"
HelloServer!
Du kan ta en titt på standard GetCapabilities för QGIS-servern på :
http://localhost/cgi-bin/qgis_mapserv.fcgi?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetCapabilities