我是Mapserver的新手。 我做过样品申请..
MAP
NAME "Hello_World"
SIZE 400 300
IMAGECOLOR 249 245 186
IMAGETYPE png
EXTENT -1.00 -1.00 1.00 1.00
WEB
TEMPLATE "C:/Mapserver/ms4w/Apache/htdocs/Hello/Hello.html"
IMAGEPATH "C:/Mapserver/ms4w/Apache/htdocs/tmp/"
IMAGEURL "/tmp/"
END
LAYER
NAME 'TEST_LAYER'
STATUS default
TYPE point
FEATURE
POINTS 0.0 0.0 END
TEXT "Hello World"
END
CLASS
STYLE
COLOR 255 0 0
END
LABEL
TYPE bitmap
END
END # end class
END # end layer
END # end mapfile
我的Html文件是:
<html>
<head><title>MapServer Hello World</title></head>
<body>
<form method=POST action="/cgi-bin/mapserv.exe">
<input type="submit" value="Click Me">
<input type="hidden" name="map" value="C:/Mapserver/ms4w/Apache/htdocs/Hello/mapdata/hello.map">
<input type="hidden" name="map_web_imagepath" value="C:/Mapserver/ms4w/Apache/htdocs/tmp/">
</form>
<IMG SRC="[img]" width=400 height=300 border=0 />
</body>
</html>
当我运行直通网址时 http://localhost:88/cgi-bin/mapserv.exe?map=C:/Mapserver/ms4w/Apache/htdocs/Hello/mapdata/hello.map
它在临时文件夹中生成了图像。
当我点击“Click me”按钮时,它会说loadWeb():未知标识符。 (C)附近的解析错误:(第1行)
我正在使用MapServer版本5.6.6
请有人帮助我。
提前致谢。
答案 0 :(得分:3)
当我通过URI调用WMS时,我遇到了类似的问题。 http://sun-web-extdev.ga.gov.au/cgi-bin/mapserv?map=map.map&map_web_template=template.html&map_imagetype=png
修复此问题的操作: 删除.map文件中的模板行并使用以下WMS URI:
从版本5 WMS中丢弃.map文件中的配置模板文件,而不是使用上面的append参数。
在你的情况下尝试添加
答案 1 :(得分:2)
将此评论放在第一行
<!-- Mapserver Template -->
并删除此行:
<input type="hidden" name="map_web_imagepath" value="C:/Mapserver/ms4w/Apache/htdocs/tmp/">
这对我有用。
答案 2 :(得分:1)
我在创建一些关于在Windows上使用MapServer的教程时遇到了同样的错误。
解决方案是全部改变&#34; /&#34;到&#34; //&#34;在地图文件上。由于Windows对反斜杠敏感
使用上面的示例IMAGEPATH路径
:此强>
IMAGEPATH "C:/Mapserver/ms4w/Apache/htdocs/tmp/"
已更改为此工作
IMAGEPATH "C://Mapserver//ms4w//Apache//htdocs//tmp//"