[Qgis-developer] Integration of QGIS mapserver to svn?

Andreas Neumann a.neumann at carto.net
Mon Aug 23 17:04:06 EDT 2010


  Hi,

On Mon, Aug 23, 2010 at 9:08 PM, Andreas Neumann <a.neumann at carto.net> 
wrote:
>>   +0 for QGIS Server and +1 for QGIS Mobile.
>>
>> While I like "QGIS Server" as a name, there may be different "QGIS Servers"
>> in the future? Maybe a QGIS WFS server? Or a QGIS WPS or geoprocessing
>> server? Or a QGIS printserver?
> Wouldnt they all be the same server just with different service type
> requests? Would be nicer than needing to deploy 4 server binaries....

indeed it would be nicer to have just one binary handling different 
services. If this doesn't make the thing bloated and if it is 
technically feasible.

>> I would see "QGIS Server" as a family of upcoming potential servers and
>> "QGIS WMS server" for the great work that Marco just did. I also still like
>> "QGIS Mapserver" or "QGIS Webmap Server" which actually describes what it is
>> - serving styled maps for web-connected devices and applications.
>>
> I love how we discuss names more than the actual thing Marco made :-)
> For those who are interested, here is a quick guide to getting
> started:
>
> http://linfiniti.com/2010/08/qgis-mapserver-a-wms-server-for-the-masses/
> (docs team you are welcome to reappropriate that for the next manual
> if it is useful to you...)
thanks for this first documentation.

Here are a few notes you  could  add to your blog:

* QGIS Mapserver (or however it will be called) implements WMS 1.3 only 
(not WMS 1.1.1)

* GetFeatureInfo should support: text, html, xml

* GetFeatureInfo honors some of the attribute settings of a QGIS layer: 
hidden attributes are suppressed, column aliases are used if present.

* When doing the GetCapabilities, the answer can be very slow and big, 
because for every layer, QGIS will return all available CRS. You can 
limit this list by using adding the following XML elements to the 
properties section:
<properties>
<WMSEpsgList type="QStringList">
<value>21781</value>
<value>4326</value>
</WMSEpsgList>
</properties>
QGIS will not remove these settings from the .qgs file after saving it 
from the desktop version, but currently there is no GUI to do the WMS 
settings.

* By default, QGIS Mapserver will advertise the maximum extent of all 
involved layers. This can be overridden by the following setting, again 
in the <properties> section of a .qgs file; replace with your own 
min/max settings:
<properties>
<WMSExtent type="QStringList">
<value>692000</value>
<value>241500</value>
<value>700100</value>
<value>249000</value>
</WMSExtent>
</properties>

* GetLegendGraphics should work, e.g. 
http://yourserver/cgi/qgis_mapserv.fcgi?map=/home/qgisprojects/myproject.qgs&SERVICE=WMS&REQUEST=GetLegendGraphics&FORMAT=image/png&LAYERS=hydrology&WIDTH=400

* QGIS Mapserver can handle multiple project files with one fcgi binary. 
On a first request of a newly started Apache server, the request will be 
slower, because the .qgs file has to be parsed, later requests are fast, 
because there is a cache for more .qgs files. You can use the 
"map=/home/path/to/your/project.qgs" parameter to specify which project 
you want to access

It would be nice if we could expose some of the "hidden" WMS properties 
in a GUI, somewhere in the QGIS project properties. Maybe a 
Server-Settings tab.

Andreas


More information about the Qgis-developer mailing list