Mapserver: loadWeb(): неизвестный идентификатор. Ошибка разбора рядом с (C):(строка 1)
Я новичок в 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>
Когда я запускаю сквозной URL-адрес http://localhost:88/cgi-bin/mapserv.exe?map=C:/Mapserver/ms4w/Apache/htdocs/Hello/mapdata/hello.map
Он сгенерировал изображение во временной папке.
Когда я нажимаю кнопку "Нажми меня", произойдет загрузка load (): неизвестный идентификатор. Ошибка разбора рядом с (C):(строка 1)
Я использую MapServer версии 5.6.6
Пожалуйста, кто-нибудь, помогите мне.
Заранее спасибо.
3 ответа
У меня похожая проблема, когда я вызываю WMS через URI. 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, как указано выше.
в вашем случае попробуйте добавить
В вашем html файле поместите этот комментарий в первую строку
<!-- Mapserver Template -->
и стереть эту строку:
<input type="hidden" name="map_web_imagepath" value="C:/Mapserver/ms4w/Apache/htdocs/tmp/">
это сработало для меня.
Я получил ту же ошибку при создании учебника по использованию MapServer в Windows.
Решением было изменить все "/" на "//" в файле карты. Так как Windows чувствительна к обратным слешам
Используя пример пути IMAGEPATH выше
это
IMAGEPATH "C:/Mapserver/ms4w/Apache/htdocs/tmp/"
Поменял на Работал
IMAGEPATH "C://Mapserver//ms4w//Apache//htdocs//tmp//"