[MapServer-users] Link in SLD doc returns an exception

Brent Fraser bfraser at geoanalytic.com
Sat Dec 31 09:13:08 PST 2022


Bjørn,

Thanks for the info.  I'm not sure if I should file an Issue on the doc for the broken link, or on the demo for the missing file (no public GitHub repository for the demo?).

While testing the GeoMoose/OpenLayers client, I did see foreign WMS servers (not under my control) cause a "Cross-Origin Request Blocked" error.  This was unexpected as I had encoded the XML SLD document and included it in the GET request parameter SLD_BODY.  I could understand getting the error if I had used the alternative method of instead using SLD=http://... to reference an SLD document somewhere on the web, but I did not use that method.  I even removed the reference links in the header of the SLD, but I got the same error.

Thanks again!
Brent Fraser

----------------------------------------
From: "Bjørn Ove Grøtan" <bjorn.ove at grotan.com>
Sent: 12/31/22 5:47 AM
To: Brent Fraser <bfraser at geoanalytic.com>
Cc: "mapserver-users at lists.osgeo.org" <mapserver-users at lists.osgeo.org>
Subject: Re: [MapServer-users] Link in SLD doc returns an exception

Brent Fraser:
> Hi All,
>
> I'm experimenting with SLD and reading the MapServer doc. On the SLD page under Server Side Support, it says "Test the remote SLD request" with a link to
>
> https://demo.mapserver.org/cgi-bin/wms?SERVICE=wms&VERSION=1.1.1&REQUEST=GetMap&LAYERS=country_bounds&FORMAT=png&WIDTH=400&HEIGHT=300&SRS=EPSG:4326&STYLES=&BBOX=-180.0,-90.0,180.0,90.0&TRANSPARENT=TRUE&SLD=https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml
>
> The link looks good but it returns an exception:
>
> <?xml version='1.0' encoding="UTF-8" standalone="no" ?>
> <!DOCTYPE ServiceExceptionReport SYSTEM "http://schemas.opengis.net/wms/1.1.1/exception_1_1_1.dtd">
> <ServiceExceptionReport version="1.1.1">
> <ServiceException>
> msSLDApplySLDURL: WMS server error. Could not open SLD https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml and save it in a temporary file. Please make sure that the sld url is valid and that the temporary path is set. The temporary path can be defined for example by setting TEMPPATH in the map file. Please check the MapServer documentation on temporary path settings.
> msHTTPExecuteRequests(): HTTP request error. HTTP GET request failed with status 404 () for https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml
> </ServiceException>
> </ServiceExceptionReport>
>
> Is the demo in a repo somewhere or does someone have some insight? Thanks!

The error message is correct,
https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml returns a 404
Page not found, The root folder at /ogc-demos/ has been removed at some point.

Be aware though, that not all WMS-servers allow (by configuration) external
hosted SLD-files due to potential XXE (XML eXternal Entity) vulnerability,

Also might be of interrest: the Mapserver implementation of GetStyle-request
(return SLD for a given layer) has some limitations on line-symbols where
images (png) are placed along the line symbol, and same with polygon fills
using a repeated png-file as fill - but simple polygon symbologies with a solid
fill color works as expected.

--
Kind regards

Bjørn Ove Grøtan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20221231/3612afd4/attachment.htm>


More information about the MapServer-users mailing list