Reputation: 11
I am using Mapserver 7.0.7 (MS4W 3.2.8) and i'm having trouble wrapping cgi-bin/mapserv and map=mapfile.map
work fine in
using RewriteRule in .htaccess into the folder on my leafletjs web
RewriteRule ^ms(.*)$ http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/apps/Leaflet/mapserver/Leaflet.map$1
result:
Not Found The requested URL /Leaflet/ms&service=WMS&request=GetMap&layers=LAT&styles=&format=image/png&transparent=true&version=1.3.0&tiled=true&width=512&height=512&crs=EPSG:3857&bbox=-6574807.424977722,-3443946.7464169012,-6261721.357121639,-3130860.67856082 was not found on this server.
but is a working GetCapabilities request
http://localhost/Leaflet/ms&service=WMS&version=1.0.0&request=GetCapabilities
and it is replaced as =>
result:
<!-- end of DOCTYPE declaration -->
<WMT_MS_Capabilities version="1.0.0">
<!--
MapServer version 7.0.7 (MS4W 3.2.8) OUTPUT=PNG OUTPUT=JPEG OUTPUT=KML SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=CAIRO SUPPORTS=SVG_SYMBOLS SUPPORTS=SVGCAIRO SUPPORTS=ICONV SUPPORTS=FRIBIDI SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER SUPPORTS=SOS_SERVER SUPPORTS=FASTCGI SUPPORTS=THREADS SUPPORTS=GEOS SUPPORTS=POINT_Z_M INPUT=JPEG INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE
-->
<Service>
<Name>GetMap</Name>
<Title>Leaflet - WMS</Title>
<OnlineResource>http://localhost/Leaflet/ms?</OnlineResource>
</Service>
...
Upvotes: 1
Views: 455
Reputation: 220
Your rewrite rule is removing the important ?
querystring character, creating an invalid request such as /Leaflet/ms&service=WMS&...
but it should result as /Leaflet/ms?service=WMS...
Try a rule such as:
RewriteRule ^ms?(.*)$ http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/apps/Leaflet/mapserver/Leaflet.map$1
Upvotes: 0