Основная проблема заключается в том, что вы пытаетесь использовать режим просмотра Mapserver, который не поддерживается OpenLayers 3 и более поздними версиями.Вместо этого вы должны использовать WMS.
Некоторые подсказки, которые мы увидим после того, как я определил более одной проблемы, по крайней мере.
Изменение в части Mapserver, в обоих WEB-блокеи блок LAYER
"wms_srs" "EPSG:4326"
с
"wms_srs" "EPSG:3857 EPSG:4326"
Попробуйте на данный момент изменить свой код для правильного управления вызовом уровня WMS из OpenLayers
new ol.source.ImageWMS({
url: 'http://127.0.0.1/cgi-bin/mapserv.exe?map=/ms4w/apps/pop/htdocs/interact.map&layers=pops&mode=map',
serverType: 'mapserver'
})
с помощью
new ol.source.ImageWMS({
url: 'http://127.0.0.1/cgi-bin/mapserv.exe',
params: {
'LAYERS': 'pop',
'MAP': '/ms4w/apps/pop/htdocs/interact.map'
},
serverType: 'mapserver'
})
Код ниже можно удалить, так как "EPSG: 3857" уже является проекцией по умолчанию
var projection = new ol.proj.Projection({
code: 'EPSG:3857',
units: 'm'
});
ol.proj.addProjection(projection);
Следовательно, projection: projection,
можно удалить.
Изменить[2269873, 5087648]
с ol.proj.fromLonLat([20.390616089102306, 41.50857324328069])
, которые делают то же самое, что и предыдущий код, но используют десятичные градусы для установки центра (более просто изменить с человеческой точки зрения ИМХО)