QGIS recently added new WMS server capabilities to its software stack. Breaking into the server world, the new server can read a QGIS project project file and serve maps to the internet. This amazing new feature, really brings QGIS users to a new set of possibilities.
Today I found some time to test some new amazing QGIS features. One of the most interesting additions is the WMS integrated server.
I usually test all new projects in my user directory, I created a folder ‘~/public_html/qgis-client/’ to host this test.
Next step was to enable CGI handling, since I run apache under Linux and all I had to do was to create a file named ‘.htaccess’ in the ‘~/public_html’ folder:
AddHandler cgi-script .fcgi .cgi Options +ExecCGI SetEnv LD_LIBRARY_PATH /home/myuser/app/lib
This few lines, enable CGI and add a search path to the library loader, this was necessary for the handler to load my QGIS trunk build, located in ‘~/app/’.
Now I needed to symlink the qgis-mapserv.fcgi executable into the project folder:
cd ~/public_html/qgis-client/ ln -s ~/app/bin/qgis_mapserv.fcgi . ~/app/bin/wms_metadata.xml . vim ~/app/bin/wms_metadata.xml
The last command allows the customization of the GetCapabilities response.
I was now able to serve a qgis project with the WMS protocol, the project location can be specified with the map parameter, like this: