User Tools

Site Tools


tecnica:gps_cartografia_gis:beyond_mapserver

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tecnica:gps_cartografia_gis:beyond_mapserver [2011/08/09 15:30] niccolotecnica:gps_cartografia_gis:beyond_mapserver [2012/03/22 11:54] (current) – [PyWPS] niccolo
Line 7: Line 7:
   * [[http://www.tinyows.org/]]   * [[http://www.tinyows.org/]]
  
-%%http://localhost/cgi-bin/tinyows?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetCapabilities%%+Installazione versione 1.0.0:
  
-Il file di configurazione predefinito è **''/etc/tinyows/config.xml''**, per usarne uno diverso bisogna impostare la variabile d'ambiente **''TINYOWS_CONFIG_FILE''**. Un metodo per impostare la variabile è quello di creare uno script shell, ad esempio **''/usr/lib/cgi-bin/tinyows-demo''** che contiene:+<code> 
 +./configure 
 +make && make install 
 +</code> 
 + 
 +Viene creata la directory **''/usr/local/share/tinyows/''**, l'eseguibile **''tinyows''** deve essere copiato a mano in **''/usr/lib/cgi-bin/''**. Pare che la patch per risolvere il [[http://www.tinyows.org/trac/wiki/LibxmlSchemaGmlBug|bug di Libxml con GML 3.1.1]] sia già applicata nei sorgenti, contrariamente a quanto scritto nella pagina wiki. 
 + 
 +Il file di configurazione predefinito è **''/etc/tinyows.xml''**, ma conviene creare una directory **''/etc/tinyows/''** in modo da poterne avere più di uno. Per indicare il file di configurazione da usare bisogna impostare la variabile d'ambiente **''TINYOWS_CONFIG_FILE''**. Un metodo per impostare la variabile è quello di creare uno script shell, ad esempio **''/usr/lib/cgi-bin/tinyows-demo''** che contiene:
  
 <code bash> <code bash>
Line 28: Line 35:
 </file> </file>
  
-===== QGIS-Mapserver =====+Per testarne il funzionamento si può richiedere una ''GetCapabilities'': 
 + 
 +%%http://localhost/cgi-bin/tinyows?SERVICE=WFS&VERSION=1.1.0&REQUEST=GetCapabilities%% 
 + 
 +==== Debug ==== 
 + 
 +Per avere un po' di logging da TinyOWS dovrebbe essere sufficiente aggiungere qualcosa del genere nel file di configurazione: 
 + 
 +<code xml> 
 +<tinyows online_resource="http://127.0.0.1/cgi-bin/tinyows" 
 +    schema_dir="/usr/share/tinyows/schema/" 
 +    check_schema="0" 
 +    log="/tmp/tows.log" 
 +    log_level="1"> 
 +</code> 
 +===== QGIS Server =====
  
-Fornisce un server WMS a partire da un progetto QGIS. Si installa il pacchetto Debian **qgis-mapserver**.+Modulo CGI allegato al programma QGIS, fornisce un server WMS a partire da un progetto QGIS. Si installa con il pacchetto Debian **qgis-mapserver**.
  
   * [[http://www.qgis.org/wiki/Web_server]]   * [[http://www.qgis.org/wiki/Web_server]]
Line 99: Line 121:
 ===== QGIS Web Client ===== ===== QGIS Web Client =====
  
 +  * Readme e download: [[https://github.com/qgis/qgis-web-client/]]
   * Demo: [[http://webgis.uster.ch/]]   * Demo: [[http://webgis.uster.ch/]]
   * Bugs: [[http://hub.qgis.org/projects/qgis-web-client]]   * Bugs: [[http://hub.qgis.org/projects/qgis-web-client]]
-  * Readme: [[https://github.com/qgis/qgis-web-client/blob/master/readme.txt]] 
  
 Come prelevare il codice aggiornato: Come prelevare il codice aggiornato:
Line 113: Line 135:
 **''js/GlobalOptions.js''** **''js/GlobalOptions.js''**
  
-:!: **ATTENZIONE!** Non è ben chiaro il motivoma il parametro **''serverAndCGI''** deve puntare ad un URL **sullo stesso dominio** dell'applicativo WebGIS, altrimenti la mappa appare vuota e genera alcuni errori JavaScript.+:!: **ATTENZIONE!** Le richieste **''GetCapabilities''**, **''GetFeatureInfo''** e **''GetPrint''** devono essere indirizzate allo stesso host che ospita l'applicazione webcioè il parametro **''serverAndCGI''** **deve puntare allo stesso host dove risiede l'applicazione web**, altrimenti la mappa appare vuota e genera alcuni errori JavaScript. È la limitazione **[[wp>Same origin policy]]** di **[[wp>XMLHttpRequest]]**. Le richieste **''GetMap''** non avrebbero questa limitazione.
  
 <code javascript> <code javascript>
Line 119: Line 141:
 var serverAndCGI = "http://www.faunalia.it/cgi-bin/qgis-ms-demo/qgis_mapserv.fcgi"; var serverAndCGI = "http://www.faunalia.it/cgi-bin/qgis-ms-demo/qgis_mapserv.fcgi";
 var epsgcode = 3003; var epsgcode = 3003;
-var overviewLayer = new OpenLayers.Layer.WMS(...); 
  
 var MapOptions = { var MapOptions = {
     ...     ...
 +    units: "m",
     maxScale:5000,     maxScale:5000,
     minScale:8000000,     minScale:8000000,
Line 130: Line 152:
 var OverviewMapOptions = { var OverviewMapOptions = {
     ...     ...
 +    units: "m",
     maxScale:500000,     maxScale:500000,
     minScale:16000000,     minScale:16000000,
     ...     ...
 } }
 +
 +var overviewLayer = new OpenLayers.Layer.WMS(...);
 </code> </code>
  
Line 238: Line 263:
 Nell'elenco dei layer a sinistra della pagina web, i layer vengono organizzati gerarchicamente come nel progetto QGIS (click destro su layers, //Add group//, che nel file del progetto si traduce in una sezione ''%%<qgis>%%'', ''%%<legend>%%'', ''%%<legendgroup>%%''. Nell'elenco dei layer a sinistra della pagina web, i layer vengono organizzati gerarchicamente come nel progetto QGIS (click destro su layers, //Add group//, che nel file del progetto si traduce in una sezione ''%%<qgis>%%'', ''%%<legend>%%'', ''%%<legendgroup>%%''.
  
 +===== Lizmap Web Client =====
 +
 +  * [[http://hub.qgis.org/projects/lizmapwebclient]]
 +
 +Lizmap Web Client is a complete web application dedicated to show dynamic maps created with Qgis.
 +
 +It is build with Jelix (a PHP framework), Jquery (a Javascript framework) and OpenLayers (a javascript set of tools to create and display maps in a web page).
 +
 +It uses QgisServer as the map server. Lizmap Web Client needs the Qgis projects data to be send to the server via Lizmap Plugin, a python plugin which help to configure and publish a web map from a project.
 +
 +===== PyWPS =====
 +
 +  * http://pywps.wald.intevation.org/
 +
 +==== Installazione ====
 +
 +L'installazione ufficiale (versione 3.2.1) prevede di scompattare l'archivio ed eseguire come root:
 +
 +<code>
 +python setup.py install
 +</code>
 +
 +Ma c'è un bug segnalato in questo [[http://lists.wald.intevation.org/pipermail/pywps-devel/2011-November/001243.html|messaggio]], bisogna patchare ''setup.py''.
 +
 +Vengono aggiunti questi file/directory in **''/usr/local/''**:
 +
 +<code>
 +./bin/wps.py
 +./lib/python2.6/dist-packages/pywps-3.2.1-py2.6.egg/
 +./lib/python2.6/dist-packages/easy-install.pth
 +</code>
 ===== Allestire una demo integrata ===== ===== Allestire una demo integrata =====
  
tecnica/gps_cartografia_gis/beyond_mapserver.1312896652.txt.gz · Last modified: 2011/08/09 15:30 by niccolo