WMS GetCapabilities

date:2010-01-16 15:38
author:admin
category:mapserver, web development, wms
tags:download, error, getcapabilities, headers, http, mapserver, wms
slug:wms-get-capabilities
status:published

Yes, I’d like to see the map layers and capabilities available from my MapServer MAP file, and no I don’t want to download mapserv.exe..

Messing with Headers

I had the same problem with both Firefox and Internet Explorer 7 each time I issues a request such as:

http://geographika.azurewebsites.net/cgi-bin/mapserv.exe?map=/ms4w/apps/my.map&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetCapabilities

The browser tried to download mapserv.exe. The “exe” did actually contain the GetCapabilities XML, but it is very annoying to have to manually open it in another program each time.

This is a FAQ on the MapServer site which suggested that a program needs to be manually associated with the MIME type returned by the requests - application/vnd.ogc.wms_xml.

In FireFox I went about associating an application with the MIME type application/vnd.ogc.wms_xml, following the steps outlined here. After a restart of FireFox nothing had changed.

image0

I used FireBug to check that the request was returning the correct MIME type. As shown in the image below the server was correctly returning the correct Content-Type.

image1

I then checked the request parameters sent from my browser to the server. These included:

Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language    en-US,en;q=0.7...
Accept-Encoding    gzip,deflate

I then thought the reason for trying to download the content was due to my browser not “accepting” the application/vnd.ogc.wms_xml type. I used anotherFireFox Add-In to modify my request headers to accept the content type (and “chunked” encoding just for good measure..).

image2

The headers sent with my request now looked as follows:

Accept    application/vnd.ogc.wms_xml,text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language    en-US,en;q=0.7,chrome://global/locale/intl.properties;q=0.3
Accept-Encoding    chunked,gzip,deflate

A Hackish Solution

All good “fun” but I was still met with the same dialog box to download the content. FireBug still reported the response data as “The resource from this URL is not text.”

This

post hints that the content type defined in the WMS specs was a mistake, and that for the new WMS specifications the content type will be set to text/html by default. It also suggested that adding a &EXECPTIONS=text/html parameter to the request string could override the content type, but this (I believe) is only where an exceptions actually occur s on the server.

I stumbled across a solution by accident. While entering a request string I put an incorrect version number in the VERSION parameter:

http://geographika.azurewebsites.net/cgi-bin/mapserv.exe?map=/ms4w/apps/my.map&SERVICE=WMS&VERSION=1.0.3&REQUEST=GetCapabilities

The response came back in an text/xml format that was displayed in the browser! Whilst not very satisfactory, it was nicer than having to manually open up fake .exe files. If anyone can shed any light on why this is happening please let me know.

orphan:

Comments

http://www.gravatar.com/avatar/6796d65709891adf2f6306a70440e1f8?s=55&d=identicon&r=g

1. matt **

Thanks for the info–helped solve an install probelm I was having.

Reply
http://www.gravatar.com/avatar/ec3395718f217f871ecb6fd25abfe735?s=55&d=identicon&r=g

2. 2000MPH **

Cheers very much for the detailed information about this issue The Log Viewer was useful as it lead me to the exact issue.

MPH.

Reply
http://www.gravatar.com/avatar/?s=55&d=identicon&r=g

3. Visual Studio 2005 Windows Installer Issues « Welcome to Matt’s Blog, Please Keep to the Posted Speed Limit **

[...] http://geographika.wordpress.com/2007/02/20/windows-installer-woes/ [...]

Reply
http://www.gravatar.com/avatar/ca64e9f841faa538f18e94dd66341046?s=55&d=identicon&r=g

4. Hutch **

Thanks for the help, good info here!

Reply
http://www.gravatar.com/avatar/bde16eec0d4956ff763041ea04d2af1f?s=55&d=identicon&r=g

5. iraklis **

Thanks a lot for this! It’s been really helpful.

Reply
http://www.gravatar.com/avatar/4f6ca7ddf6f324901bd98d888e0b97b2?s=55&d=identicon&r=g

6. VBAHole22 **

Is there a way to trap for this issue in the installer and handle it a little more gracefully like with a message saying “you need this version of ArcGIS!”

Reply
Add Comment