У меня возникла интересная проблема, над которой я работал в течение нескольких дней, когда в Windows я получаю пустой ответ png, однако в Linux с почти идентичным файлом карты я получаю ожидаемый результат. Я установил MapServer в Linux, используя Apache в качестве сервера WMS, и он работал отлично, но мне, к сожалению, нужно переключиться на Windows и IIS.Переключение MapServer из Linux с Apache в Windows с IIS. Blank PNG Response
У меня есть небольшая база данных sqlite с кучей точек, которые я пытаюсь отобразить MapServer. Я использую ту же базу данных sqlite в linux и windows.
Вот установка Linux: (Works)
ogrinfo на БД SQLite:
[email protected]:/usr/lib/cgi-bin# ogrinfo CountiesAR.sqlite ArkPointGeo -summary
INFO: Open of `CountiesAR.sqlite' using driver `SQLite' successful.
Layer name: ArkPointGeo
Geometry: Unknown (any)
Feature Count: 1004
Extent: (-94.515743, 33.069850) - (-89.870035, 36.495504)
Layer SRS WKT:
(unknown)
FID Column = _rowid_
Geometry Column = GeoPoint
PK_UID: Integer (0.0)
PK_UID:1: Integer (0.0)
DocumentID: String (0.0)
Latitude: Real (0.0)
Longitude: String (0.0)
я получаю ожидаемый PNG, когда я бегу shp2img с помощью команды:
shp2img -m Test.map -o test.png -all_debug 5
Файл карты: http://hastebin.com/iyerudipes.vhdl
И URL я использую для доступа:
http://www.zachatrocity.com/cgi-bin/mapserv?mode=map&map=Test.map&layer=Points
Если следовать этой ссылке вы можете увидеть, что отображается. С этой настройкой все работает так, как ожидалось.
окон настройки: (не работает)
ogrinfo на БД SQLite:
C:\path\to\gdal-ogr>ogrinfo C:\pathto\data\CountiesAR.sqlite ArkPointGeo -summary
INFO: Open of `C:\pathto\data\CountiesAR.sqlite'
using driver `SQLite' successful.
Layer name: ArkPointGeo
Geometry: Unknown (any)
Feature Count: 1004
Extent: (-94.515743, 33.069850) - (-89.870035, 36.495504)
Layer SRS WKT:
(unknown)
FID Column = _rowid_
Geometry Column = GeoPoint
PK_UID: Integer (0.0)
PK_UID:1: Integer (0.0)
DocumentID: String (0.0)
Latitude: Real (0.0)
Longitude: String (0.0)
Когда я бегу shp2img на машине Windows, я получаю следующее для каждой точки в моей БД:
Уведомление Я не получил никаких ошибок с эквивалентной командой в Linux.
Файл Карта: http://hastebin.com/subabefuxo.vhdl
и URL я использую:
http://localhost:1020/cgi-bin/mapserv.exe?mode=map&map=C:\path\to\Test.map&layer=Points
Наконец, отлаживать текст:
[Thu Aug 28 09:19:31 2014].373000 CGI Request 1 on process 6584
[Thu Aug 28 09:19:31 2014].380000 msDrawMap(): rendering using outputformat named png (AGG/PNG).
[Thu Aug 28 09:19:31 2014].380000 msDrawMap(): WMS/WFS set-up and query, 0.000s
[Thu Aug 28 09:19:31 2014].404000 msDrawMap(): Layer 0 (Points), 0.024s
[Thu Aug 28 09:19:31 2014].404000 msDrawMap(): Drawing Label Cache, 0.000s
[Thu Aug 28 09:19:31 2014].404000 msDrawMap() total time: 0.031s
[Thu Aug 28 09:19:33 2014].103000 msSaveImage(stdout) total time: 1.699s
[Thu Aug 28 09:19:33 2014].104000 mapserv request processing time (loadmap not incl.): 1.732s
[Thu Aug 28 09:19:33 2014].105000 msFreeMap(): freeing map at 02A40048.
Любые идеи, почему это будет работать на моем Linux сервер, но не мой Windows один? Я в недоумении.