Ho risolto il problema col cgi su ms4w… era una cavolata, bastava indicare il giusto percorso:
IMAGEPATH “/ms4w/tmp/ms_tmp/”
IMAGEURL “/tmp/ms_tmp/”
ora il mio mapfile produce correttamente la mappa caricando il layer wms nel browser.
Resta il problema di Ka-Map.
Tutta la documentazione che ho letto, sia di mapserver che di kamap, non mi ha aiutato ad individuare il problema ed il mio mapfile (in allegato) è scritto bene, altrimenti non mi darebbe il risultato via cgi…
Quando spengo il layer vettoriale e accendo quello wms (BMNG) vedo per un attimo le mattonelle che si caricano col simbolo del link rotto in alto (effetto che vi potete godere qui: http://openmaps.it/kamap/index_overlay.html ).
Sembrerebbe un problema di permessi, ma ho controllato e la dir kacache è presente ed accessibile.
L’output di init.php e tile.php non mi riporta nessun errore… o almeno così mi sebra di vedere:
init.php
/init/aszScales=new Array(‘100000000’,‘75000000’,‘50000000’,‘25000000’);var map = new _map({name:‘gmap’,title:‘World Map’,currentScale: 0,units:5,resolution:72,version:‘’,scales:aszScales});map.setDefaultExtents(-180,-90,180,90);map.setBackgroundColor(‘rgb(192,192,192)’);map.addLayer(new _layer( { name:‘BMNG’,visible:false,opacity:100,imageformat:‘gif’,queryable:false,tileSource:‘auto’,redrawInterval:-1,refreshInterval:-1,scales: new Array(‘1’,‘1’,‘1’,‘1’)}));map.addLayer(new _layer( { name:‘WorldMap’,visible:true,opacity:100,imageformat:‘gif’,queryable:false,tileSource:‘auto’,redrawInterval:-1,refreshInterval:-1,scales: new Array(‘1’,‘1’,‘1’,‘1’)}));map.resolution = 72;this.addMap( map );this.tileWidth=256;this.tileHeight=256;this.server = 'http://www.openmaps.it/kamap/';this.tileURL = ‘tile.php’;this.selectMap(‘gmap’);
tile.php
nessun errore, genera la mattonella del layer vettoriale.
Se cancello la cache di kamap e commento il layer vettoriale nel mapfile (lasciando solo quello wms) non ricevo comunque alcun errore ma visualizzo (per modo di dire…) una tile png 256x256 vuota (non so se bianca o trasparente).
Ho controllato anche sulla ML di ka-map e c’è questo messaggio: http://lists.maptools.org/pipermail/ka-map-users/2006-August/002151.html
che illustra un problema simile al mio, ma in quel caso era dovuto al fatto che nel mafile non erano stati specificati imagepath e imageurl… cosa che io invece ho fatto!
La situazione sta diventando frustrante! In tutti gli esempi il mapfile è uguale al mio e lo stesso mapfile su pmapper funziona.
Devo modificare qualcosa in ka-map per poter utilizzare layers richiamati via wms?
Ho letto il config.php abbastanza a fondo e non mi sembra di ritrovare riferimenti ad impostazioni particolari per il wms.
Ho controllato e la funzione client wms è supportata.
./mapserv -v
MapServer version 4.10.2 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP OUTPUT=PDF OUTPUT=SVG SUPPORTS=PROJ SUPPORTS=FREETYPE SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=GEOS INPUT=EPPL7 INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE
Poi sono andato a vedere il log di apache e questo è il risultato:
Sat May 26 15:53:35 2007] [error] [client 151.44.4.30] PHP Warning: [MapServer Error]: msDrawMap(): Failed to draw WMS layer
named ‘BMNG’. This most likely happened because the remote WMS server returned an invalid image, and XML exception or another
unexpected result in response to the GetMap request. Also check and make sure that the layer’s connection URL is valid.\n in
/usr/local/apache2/webdomains/openmaps.it/home/htdocs/ka-map-1.0/htdocs/tile.php on line 289, referer: http://www.openmaps.it/
kamap/index_overlay.html
Mi scuso per la lunghezza del messaggio, ma volevo dare il maggior numero di informazioni possibili…
ciao
world_map.map (1.98 KB)