#1 Tue 25 August 2009 11:59
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
[MapServer] Installation/Compilation - Image blanche
Bonjour,
Je suis actuellement en galère pour faire fonctionner MapServer sur ma machine qui tourne sous CentOS.
Mon premier réflexe a été de vouloir compiler mon propre exécutable de MapServer. A priori j'y suis arrivé sans trop de problèmes, seulement arrive le test décisif du serveur et là c'est la désillusion, le serveur me renvoi une image blanche. (blanche car il s'agit de la couleur de fond que j'ai choisie)
Les questions que je me pose sont :
- Mon exécutable est-il fonctionnel ? Comment le tester ?
(je vous aurais bien joint mon exécutable mais il fait 1,6Mo en compressé donc il ne passe pas sur le forum)
- Si oui d'où peu venir le problème ?
Voici dans l'ordre les bibliothèques que j'ai installé sur ma machine :
postgres-8.3.0
geos-3.1.1
proj-4.6.1
postgis-1.4.0
jpeg-7
libpng-1.2.39
tiff-3.9.0
freetype-2.3.9
agg-2.5
curl-7.19.6
libiconv-1.13.1
libxml2-2.7.3
gd-2.0.35
gdal-1.6.2
php-5.2.10
mapserver-5.4.2
Petite vérification à la fin de l'installation :
Code:
# ./mapserv -v MapServer version 5.4.2 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP OUTPUT=SVG SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=ICONV SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER SUPPORTS=THREADS SUPPORTS=GEOS INPUT=EPPL7 INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE
Et pour ce qui est du tutoriel que j'ai utiliser pour tester mon installation de mapserver voici le lien : http://geotribu.net/node/5
Éventuellement où pourrais-je récupérer un exécutable fonctionnel de MapServer pour CentOS afin que je puisse tester si le problème est indépendant de mon exécutable ?
Merci.
Hors ligne
#2 Tue 25 August 2009 12:06
Re: [MapServer] Installation/Compilation - Image blanche
Si tu as une image blanche, vérifie :
1. le paramètre extend de ton mapfil
2. les projections de ton mapfil et de tes LAYERS.
Et tu résoudras ton problème
Ton script mapserv fonctionne puisque tu as un retour avec la commande mapserv -v
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Tue 25 August 2009 12:23
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Bon c'est déjà une bonne nouvelle !
Alors pour faire des tests sur mon script mapserv est-ce que tu n'aurais pas des fichiers ou un tutoriel que tu es sûr qu'il fonctionne pour que je puisse le tester car celui que j'ai mis en lien me fourni une image blanche alors que j'ai pris les fichiers du tutoriel tels quels !
Par exemple des données libres sur internet avec un MapFile que tu aurais testé, si ce n'est pas trop demander, sinon un tutoriel "certifié par tes soins" ferait très bien l'affaire !
Merci beaucoup,
Jule.
Hors ligne
#4 Tue 25 August 2009 16:51
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
J'avance un petit peu dans ma quête :
Lorsque je génère une image avec shp2img j'ai effectivement le bon résultat !
Code:
shp2img ./data/indonesie_surface.shp -m ./tutorial.map -o ./tmp/img_test.png
Mais lorsque je passe par l'adresse pour tester via script CGI image blanche...
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&mode=map
Des pistes ?
Jule.
Hors ligne
#5 Tue 25 August 2009 17:08
Re: [MapServer] Installation/Compilation - Image blanche
supprime "mode=map" déjà de l'url
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#6 Tue 25 August 2009 17:12
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Great ! La sortie est déjà un peu plus intéressante.
Code:
mapserv(): Web application error. Traditional BROWSE mode requires a TEMPLATE in the WEB section, but none was provided.
Aurais-tu un petit template succinct pour tester mon schmilblic ?
Merci.
Jule.
EDIT :
Voici mon MapFile au cas où :
Code:
MAP NAME "tutorial" SIZE 1000 500 EXTENT 95.009331 -11.004850 133.073410 8.726957 UNITS METERS IMAGECOLOR 255 255 255 SHAPEPATH "/var/www/htdocs/mapserver/data" WEB IMAGEPATH "/var/www/htdocs/mapserver/tmp/" IMAGEURL "/tmp/" END OUTPUTFORMAT NAME png DRIVER "GD/PNG" MIMETYPE "image/png" IMAGEMODE PC256 EXTENSION "png" END #====================== # Layer Administratif #====================== LAYER NAME Admin_Indonesie STATUS ON CONNECTIONTYPE OGR CONNECTION "data/indonesie_surface.tab" TYPE LINE CLASS STYLE COLOR 0 0 0 OUTLINECOLOR 255 255 255 END END END END
Dernière modification par Jule (Tue 25 August 2009 17:16)
Hors ligne
#7 Tue 25 August 2009 17:19
Re: [MapServer] Installation/Compilation - Image blanche
Si tu utilises MapServer en WMS, tu n'as pas besoin de TEMPLATE Juste d'une requête correcte :
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetCapabilities
À l'intérieure du retour (un fichier xml) tu auras des url toutes prêtes à tester
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#8 Tue 25 August 2009 17:35
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Voici le retour de la bête :
Code:
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> <WMS_Capabilities version="1.3.0" xmlns="http://www.opengis.net/wms" xmlns:sld="http://www.opengis.net/sld" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ms="http://mapserver.gis.umn.edu/mapserver" xsi:schemaLocation="http://www.opengis.net/wms http://schemas.opengis.net/wms/1.3.0/capabilities_1_3_0.xsd http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/sld_capabilities.xsd http://mapserver.gis.umn.edu/mapserver http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&service=WMS&version=1.3.0&request=GetSchemaExtension"> <!-- MapServer version 5.4.2 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG OUTPUT=WBMP OUTPUT=SVG SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=ICONV SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER SUPPORTS=THREADS SUPPORTS=GEOS INPUT=EPPL7 INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE --> <Service> <Name>WMS</Name> <!-- WARNING: Mandatory metadata '..._title' was missing in this context. --> <Title>tutorial</Title> <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/> <ContactInformation> </ContactInformation> <MaxWidth>2048</MaxWidth> <MaxHeight>2048</MaxHeight> </Service> <Capability> <Request> <GetCapabilities> <Format>text/xml</Format> <DCPType> <HTTP> <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Get> <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Post> </HTTP> </DCPType> </GetCapabilities> <GetMap> <Format>image/png</Format> <Format>image/gif</Format> <Format>image/png; mode=24bit</Format> <Format>image/jpeg</Format> <Format>image/vnd.wap.wbmp</Format> <Format>image/tiff</Format> <Format>image/svg+xml</Format> <DCPType> <HTTP> <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Get> <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Post> </HTTP> </DCPType> </GetMap> <GetFeatureInfo> <Format>text/plain</Format> <Format>application/vnd.ogc.gml</Format> <DCPType> <HTTP> <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Get> <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Post> </HTTP> </DCPType> </GetFeatureInfo> <sld:DescribeLayer> <Format>text/xml</Format> <DCPType> <HTTP> <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Get> <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Post> </HTTP> </DCPType> </sld:DescribeLayer> <sld:GetLegendGraphic> <Format>image/png</Format> <Format>image/gif</Format> <Format>image/png; mode=24bit</Format> <Format>image/jpeg</Format> <Format>image/vnd.wap.wbmp</Format> <DCPType> <HTTP> <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Get> <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Post> </HTTP> </DCPType> </sld:GetLegendGraphic> <ms:GetStyles> <Format>text/xml</Format> <DCPType> <HTTP> <Get><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Get> <Post><OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&"/></Post> </HTTP> </DCPType> </ms:GetStyles> </Request> <Exception> <Format>XML</Format> <Format>INIMAGE</Format> <Format>BLANK</Format> </Exception> <sld:UserDefinedSymbolization SupportSLD="1" UserLayer="0" UserStyle="1" RemoteWFS="0" InlineFeature="0" RemoteWCS="0"/> <Layer> <Name>tutorial</Name> <!-- WARNING: Mandatory metadata '..._title' was missing in this context. --> <Title>tutorial</Title> <!-- WARNING: Mandatory mapfile parameter '(at least one of) MAP.PROJECTION, LAYER.PROJECTION or wms_srs metadata' was missing in this context. --> <CRS/> <EX_GeographicBoundingBox> <westBoundLongitude>95.0093</westBoundLongitude> <eastBoundLongitude>133.073</eastBoundLongitude> <southBoundLatitude>-11.0048</southBoundLatitude> <northBoundLatitude>8.72696</northBoundLatitude> </EX_GeographicBoundingBox> <Layer queryable="0" opaque="0" cascaded="0"> <Name>Admin_Indonesie</Name> <!-- WARNING: Mandatory metadata '..._title' was missing in this context. --> <Title>Admin_Indonesie</Title> <!-- WARNING: Mandatory mapfile parameter '(at least one of) MAP.PROJECTION, LAYER.PROJECTION or wms_srs metadata' was missing in this context. --> <EX_GeographicBoundingBox> <westBoundLongitude>95.0093</westBoundLongitude> <eastBoundLongitude>133.073</eastBoundLongitude> <southBoundLatitude>-11.0048</southBoundLatitude> <northBoundLatitude>8.72696</northBoundLatitude> </EX_GeographicBoundingBox> </Layer> </Layer> </Capability> </WMS_Capabilities>
Je ne vois pas trop où trouver les url toutes prêtes dont tu me parles en revanche je me demande si les WARNING sont la cause de mon problème ?
Hors ligne
#9 Tue 25 August 2009 17:52
Re: [MapServer] Installation/Compilation - Image blanche
Tu peux déjà te référé à la doc de MapServer (serveur WMS) pour rajouter les 2-3 paramètres qui te manque et relancer la requete jusqu'à ce que tous les WARNINGS aient disparu (mais ce ne sont que des warning).
Si ta couche a une projection en EPSG:4326 et que tu peux retrouver la bbox autour de l'indonésie, tu dois pouvoir écrire ta requête GetMap :
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&STYLESe=WIDTH=250&HEIGHT=250&FORMAT=image/png&BBOX=95,130,-10,8
Attention, il faut remplir le dernier paramètre : BBOX=-10,10,8,20 mais avec les bons chiffres. Ceux que j'ai mis devraient être bon.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#10 Wed 26 August 2009 11:06
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Je ne sais pas bien comment définir ma projection et il semble qu'elle soit erronée :
L'url :
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&STYLESe=WIDTH=250&HEIGHT=250&FORMAT=image/png&BBOX=-10,10,8,20
Me renvoi :
Code:
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> <ServiceExceptionReport version="1.3.0" xmlns="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/ogc http://schemas.opengis.net/wms/1.3.0/exceptions_1_3_0.xsd"> <ServiceException code="InvalidSRS"> msWMSLoadGetMapParams(): WMS server error. Invalid CRS given : CRS must be valid for all requested layers. </ServiceException> </ServiceExceptionReport>
Voici les infos sur mon layer :
Code:
# ogrinfo -so indonesie_surface.tab indonesie_surface Had to open data source read-only. INFO: Open of `indonesie_surface.tab' using driver `MapInfo File' successful. Layer name: indonesie_surface Geometry: Line String Feature Count: 3014 Extent: (95.009331, -11.004850) - (133.073410, 8.726957) Layer SRS WKT: GEOGCS["unnamed", DATUM["WGS_1984", SPHEROID["WGS 84",6378137,298.257223563], TOWGS84[0,0,0,-0,-0,-0,0]], PRIMEM["Greenwich",0], UNIT["degree",0.0174532925199433]] USERID: Real (11.0) FNODE_: Real (11.0) TNODE_: Real (11.0) LPOLY_: Real (11.0) RPOLY_: Real (11.0) LENGTH: Real (16.3) SE_ASIA_: Real (5.0) SE_ASIA_ID: Real (5.0) FEATURE: Real (3.0)
Hors ligne
#11 Wed 26 August 2009 11:25
Re: [MapServer] Installation/Compilation - Image blanche
C'est ton mapfil qui est incorrecte :
Code:
MAP NAME "tutorial" SIZE 1000 500 EXTENT 95.009331 -11.004850 133.073410 8.726957 UNITS METERS IMAGECOLOR 255 255 255 SHAPEPATH "/var/www/htdocs/mapserver/data" WEB IMAGEPATH "/var/www/htdocs/mapserver/tmp/" IMAGEURL "/tmp/" END OUTPUTFORMAT NAME png DRIVER "GD/PNG" MIMETYPE "image/png" IMAGEMODE PC256 EXTENSION "png" END PROJECTION "init=epsg:4326" END #====================== # Layer Administratif #====================== LAYER NAME Admin_Indonesie STATUS ON CONNECTIONTYPE OGR CONNECTION "data/indonesie_surface.tab" TYPE LINE CLASS STYLE COLOR 0 0 0 OUTLINECOLOR 255 255 255 END END END PROJECTION "init=epsg:4326" END METADATA "ows_title" "Admin_Indonesie" "ows_srs" "EPSG:4326" "ows_abstract" "blabla" END END
J'ai rajouté les métadonnées de la couche pour pouvoir avoir une réponse du GetCapabilities sans warning.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#12 Wed 26 August 2009 12:04
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Merci, on avance !
Alors tout d'abord il faut enlever une des deux définitions de la projection sinon on obtient le message d'erreur :
Code:
loadProjection(): General error message. Projection is already initialized. Multiple projection definitions are not allowed in this object. (line 43)
Après avoir supprimé la 1ère définition je me retrouve avec l'erreur suivante :
Code:
msLoadMap(): Unknown identifier. Parsing error near (METADATA):(line 46)
Ne connaissant pas la raison et lisant dans la doc qu'il s'agit d'un bloc optionnel je m'empresse de le supprimer quitte à le rajouter plus tard pour le déboguer.
Voici donc le message d'erreur qui s'en suit :
Code:
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> <ServiceExceptionReport version="1.3.0" xmlns="http://www.opengis.net/ogc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/ogc http://schemas.opengis.net/wms/1.3.0/exceptions_1_3_0.xsd"> <ServiceException code="MissingParameterValue"> msWMSLoadGetMapParams(): WMS server error. Missing required parameter WIDTH </ServiceException> </ServiceExceptionReport>
Du coup j'ai un peu modifié l'url afin de ne pas avoir &STYLESe... mais directement &WIDTH=... :
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&WIDTH=1000&HEIGHT=500&FORMAT=image/png&BBOX=-10,10,8,20
A ce moment là j'obtiens plus de message d'erreur !
... Mais j'ai de nouveau mon image blanche !
Pas évident tout ça... :x
Hors ligne
#13 Wed 26 August 2009 12:36
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
En complément j'ai mis le niveau de DEBUG à 5.
Je ne sais pas si ça peut aider mais voici le log d'une exécution sur la même url que précédemment :
Code:
[Wed Aug 26 12:33:14 2009].533857 msWMSLoadGetMapParams(): enabling non-square pixels. [Wed Aug 26 12:33:14 2009].540990 msDrawMap(): kicking into non-square pixel preserving mode. [Wed Aug 26 12:33:14 2009].541968 msOGRFileOpen(data/indonesie_surface.tab)... [Wed Aug 26 12:33:14 2009].542024 OGROPen(/var/www/htdocs/mapserver/data/indonesie_surface.tab) [Wed Aug 26 12:33:14 2009].542891 msConnPoolRegister(Admin_Indonesie,data/indonesie_surface.tab,0x99bb970) [Wed Aug 26 12:33:14 2009].543128 msOGRFileWhichShapes: Setting spatial filter to 10.000000 -10.000000 20.000000 8.000000 [Wed Aug 26 12:33:14 2009].543227 msOGRFileNextShape: Returning MS_DONE (no more shapes) [Wed Aug 26 12:33:14 2009].543236 msOGRLayerClose(data/indonesie_surface.tab). [Wed Aug 26 12:33:14 2009].543243 msOGRFileClose(/var/www/htdocs/mapserver/data/indonesie_surface.tab,0). [Wed Aug 26 12:33:14 2009].543249 msConnPoolRelease(Admin_Indonesie,data/indonesie_surface.tab,0x99bb970) [Wed Aug 26 12:33:14 2009].543258 msConnPoolClose(data/indonesie_surface.tab,0x99bb970) [Wed Aug 26 12:33:14 2009].542578 msDrawMap(): Layer 0 (Admin_Indonesie), 0.003s [Wed Aug 26 12:33:14 2009].542607 msDrawMap(): Drawing Label Cache, 0.000s [Wed Aug 26 12:33:14 2009].542618 msDrawMap() total time: 0.007s [Wed Aug 26 12:33:14 2009].613340 msSaveImage() total time: 0.071s [Wed Aug 26 12:33:14 2009].612864 mapserv request processing time (msLoadMap not incl.): 0.079s [Wed Aug 26 12:33:14 2009].612876 msFreeMap(): freeing map at 0x975e348. [Wed Aug 26 12:33:14 2009].612910 freeLayer(): freeing layer at 0x97654f0.
Hors ligne
#14 Wed 26 August 2009 12:41
Re: [MapServer] Installation/Compilation - Image blanche
bien, tente de lancer QGIS de créer un nouveau fournisseur de service WMS et charge la couche dans QGIS.
On verra de suite si je me suis planté dans la bbox
Le log indique que tout est ok donc c'est un problème de projection et/ou de bbox incorrecte.
et voici le MapFile correcte, j'ai rajouté les objets METADATA et PROJECTION au mauvais endroit. Il faut déplacer un END en dessous de ces deux objets :
Code:
MAP NAME "tutorial" SIZE 1000 500 EXTENT 95.009331 -11.004850 133.073410 8.726957 UNITS METERS IMAGECOLOR 255 255 255 SHAPEPATH "/var/www/htdocs/mapserver/data" WEB IMAGEPATH "/var/www/htdocs/mapserver/tmp/" IMAGEURL "/tmp/" END OUTPUTFORMAT NAME png DRIVER "GD/PNG" MIMETYPE "image/png" IMAGEMODE PC256 EXTENSION "png" END PROJECTION "init=epsg:4326" END #====================== # Layer Administratif #====================== LAYER NAME Admin_Indonesie STATUS ON CONNECTIONTYPE OGR CONNECTION "data/indonesie_surface.tab" TYPE LINE CLASS STYLE COLOR 0 0 0 OUTLINECOLOR 255 255 255 END END PROJECTION "init=epsg:4326" END METADATA "ows_title" "Admin_Indonesie" "ows_srs" "EPSG:4326" "ows_abstract" "blabla" END END # J'ai déplacé celui-là END
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#15 Wed 26 August 2009 13:58
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
En effet, je confirme que le MapFile corrigé ne provoque plus aucune erreur.
En paramétrant ma couche WMS sur :
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map
J'ai bien le résultat escompté, à savoir l'Indonésie s'affiche correctement.
Par contre je ne connais pas très bien QGIS mais logiquement la BBOX correspond à ce qu'ils appellent l'emprise non ?
L'emprise étant (sous QGIS) : 94,-17 : 134,14
J'ai modifié l'url :
Code:
http://webtest/cgi-bin/mapserv?map=/var/www/htdocs/chub/cartoproject/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&WIDTH=1000&HEIGHT=500&FORMAT=image/png&BBOX=94,-17,134,14
Et j'ai toujours malheureusement droit à mon image blanche...
D'autre part, il me paraît vraiment étonnant qu'un shp2img me fournisse la bonne image lorsque je lui fourni mon MapFile Info (.tab) alors que MapServer n'est pas capable de me renvoyer une image correcte... :s
Dernière modification par Jule (Wed 26 August 2009 13:59)
Hors ligne
#16 Wed 26 August 2009 14:51
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
J'ai un doute lorsque vous me dites que mon log indique que tout ce passe bien.
En effet lorsque je charge la map sous QGIS mon log affiche :
Code:
... [Wed Aug 26 14:46:03 2009].198783 msOGRFileWhichShapes: Setting spatial filter to 95.029002 -10.989774 133.053298 8.711934 [Wed Aug 26 14:46:03 2009].198286 msOGRFileNextShape: Returning shape=946, tile=0 [Wed Aug 26 14:46:03 2009].199152 msOGRFileNextShape: Returning shape=1, tile=0 [Wed Aug 26 14:46:03 2009].199206 msOGRFileNextShape: Returning shape=2, tile=0 ...
Alors que lorsque je lance l'url habituelle il indique un mauvais filtre il me semble !
Si je reprend les lignes qui m'interpèlent nous avons :
Code:
... [Wed Aug 26 12:33:14 2009].543128 msOGRFileWhichShapes: Setting spatial filter to 10.000000 -10.000000 20.000000 8.000000 [Wed Aug 26 12:33:14 2009].543227 msOGRFileNextShape: Returning MS_DONE (no more shapes) ...
Si le filtre correspond bien à la BBOX alors celle-ci n'est pas prise en compte...
D'où cela pourrait-il bien venir ?
Hors ligne
#17 Wed 26 August 2009 14:58
Re: [MapServer] Installation/Compilation - Image blanche
Le paramètre BBOX étant obligatoire, mapserver renverra une erreur s'il n'était pas pris en compte. Tu peux essayer en le supprimant de l'url.
Je pense que le message du log indique qu'il définie un filtre spatial. Tente de placer le paramètre BBOX en premier. On peut supposer qu'il y a une erreur dans "FORMAT=image/png" mais je ne voie pas pourquoi
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#18 Wed 26 August 2009 15:14
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Mazette !!!
Alors très bien vu le coup de l'interruption du parsing des arguments ! En effet, la fonction msWMSLoadGetMapParams() ne semblait pas aller jusqu'à la BBOX !
Avec l'url :
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&BBOX=94,-17,134,14&WIDTH=1000&HEIGHT=500&FORMAT=image/png
Mon log affichait bien les bons chiffres dans le filtre... Mais pas dans le bon ordre...
Le bon ordre pour les arguments de la BBOX est : -17,94,14,134 !
Problème résolu !
Un immense merci à toi Yves !
Jule.
ps : si je trouve le souci avec FORMAT=image/png je complèterai ce post !
Dernière modification par Jule (Wed 26 August 2009 15:15)
Hors ligne
#19 Wed 26 August 2009 15:18
Re: [MapServer] Installation/Compilation - Image blanche
je suppute le "/" qui doit être transformé en %2F
Code:
http://domain/cgi-bin/mapserv?map=/var/www/htdocs/mapserver/tutorial.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&BBOX=94,-17,134,14&WIDTH=1000&HEIGHT=500&FORMAT=image%2Fpng
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#20 Wed 26 August 2009 15:31
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Et ma foi tu supputes bien !
J'ai ré-inversé les paramètres en mettant la BBOX en dernier pour être sûr et cela fonctionne au poil !
Avant de clore ce topic j'aimerais si possible avoir une petite explication quand à l'impression d'étirement de l'image que j'obtiens ?
Ci-joint les deux images que j'ai pu obtenir avec les mêmes fichiers source : shp2img.png et mapserv.png.
Merci encore.
Jule.
Dernière modification par Jule (Wed 26 August 2009 16:25)
Hors ligne
#21 Wed 26 August 2009 15:49
- Jule
- Participant occasionnel
- Date d'inscription: 21 Jul 2009
- Messages: 48
Re: [MapServer] Installation/Compilation - Image blanche
Il y a de fortes chances pour que cette déformation soit liée à ces messages dans mon log de MapServer :
Code:
... [Wed Aug 26 15:41:06 2009].722272 msWMSLoadGetMapParams(): enabling non-square pixels. [Wed Aug 26 15:41:06 2009].725273 msDrawMap(): kicking into non-square pixel preserving mode. ...
Ces lignes n'apparaissent pas dans mon log lorsque je lance la commande shp2img...
Savez-vous ce que peut être ce non-square pixel preserving mode ?
-= EDIT =-
Après m'être renseigné, il semble que MapServer passe dans ce mode lorsque le ratio de la BBOX et de l'image demandée (WIDTH/HEIGHT) diffèrent !
Ainsi, il faudrait juste trouver une BBOX qui valide un ratio de 2 dans mon cas puisque je demande une image de 1000/500 = 2.
La BBOX suivante faisant donc parfaitement l'affaire : -16,90,14,150
Voili voilou !
Dernière modification par Jule (Wed 26 August 2009 16:20)
Hors ligne
#22 Sun 29 November 2009 06:48
- joel tremblet
- Juste Inscrit !
- Lieu: Aiken
- Date d'inscription: 29 Nov 2009
- Messages: 4
Re: [MapServer] Installation/Compilation - Image blanche
Bonjour
Je reprend ce fil car j'ai suivi toutes étapes pour tenter de voir une première image sur mapserver en partant du tutoriel de GeoTribu
Beaucoup de vos interrogations m'ont permis de continuer (j'étais à 2 doigts de renoncer lorsque votre fil m'a redonné espoir)
J'ai installé mapserver 5.2.1 avec le package ms4w 2.3.1 sur ma config Windows Vista avec Apache2.2.8/PHP5.2.5
Je lance la commande
Code:
http://localhost/cgi-bin/mapserv.exe?map=C:\www\ms4w\data\map_files\geotribu.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&BBOX=-16,90,14,150&WIDTH=1000&HEIGHT=500&FORMAT=image%2Fpng
Mais je n'ai toujours pas d'image, j'ai le message d'erreur
Code:
<ServiceExceptionReport version="1.3.0" xsi:schemaLocation="http://www.opengis.net/ogc http://schemas.opengis.net/wms/1.3.0/exceptions_1_3_0.xsd"> <ServiceException> msDrawMap(): Image handling error. Failed to draw layer named 'Admin_Indonesie'. msOGRFileOpen(): OGR error. Open failed for OGR connection in layer `Admin_Indonesie'. File not found or unsupported format. </ServiceException> </ServiceExceptionReport>
Voici le fichier de log de mapserver
Code:
[Sun Nov 29 00:17:05 2009].35000 msFreeMap(): freeing map at 020BD798. [Sun Nov 29 00:17:05 2009].35000 freeLayer(): freeing layer at 02474048. [Sun Nov 29 00:18:05 2009].79000 loadParams() QUERY_STRING: map=C:\www\ms4w\data\map_files\geotribu.map&VERSION=1.3.0&SERVICE=WMS&REQUEST=GetMap&LAYERS=Admin_Indonesie&CRS=EPSG:4326&BBOX=94,-17,134,14&WIDTH=1000&HEIGHT=500&FORMAT=image%2Fpng [Sun Nov 29 00:18:05 2009].204000 msLoadMap(): 0.125s [Sun Nov 29 00:18:05 2009].219000 CGI Request 1 on process 2684 [Sun Nov 29 00:18:05 2009].250000 msWMSLoadGetMapParams(): enabling non-square pixels. [Sun Nov 29 00:18:05 2009].266000 msDrawMap(): kicking into non-square pixel preserving mode. [Sun Nov 29 00:18:05 2009].266000 msOGRFileOpen(data/vector/indonesie_surface.tab)... [Sun Nov 29 00:18:05 2009].266000 OGROPen(data/vector/indonesie_surface.tab) [Sun Nov 29 00:18:05 2009].266000 msOGRFileOpen(): OGR error. Open failed for OGR connection in layer `Admin_Indonesie'. File not found or unsupported format. [Sun Nov 29 00:18:05 2009].266000 msDrawMap(): Image handling error. Failed to draw layer named 'Admin_Indonesie'. [Sun Nov 29 00:18:05 2009].282000 mapserv request processing time (msLoadMap not incl.): 0.063s [Sun Nov 29 00:18:05 2009].282000 msFreeMap(): freeing map at 01FED798. [Sun Nov 29 00:18:05 2009].282000 freeLayer(): freeing layer at 02C24048. [Sun Nov 29 00:18:05 2009].282000 mapserv total execution time: 0.219s
Merci de me dire si vous voyez des anomalies
Joël
Hors ligne
#23 Sun 29 November 2009 09:49
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: [MapServer] Installation/Compilation - Image blanche
Bonjour
Open failed for OGR connection in layer `Admin_Indonesie'. File not found or unsupported format.
mapserver ne trouve pas le fichier data/vector/indonesie_surface.tab
Il faut vérifier le chemin et le nom du fichier.
Guillaume
Hors ligne
#24 Sun 29 November 2009 16:49
- joel tremblet
- Juste Inscrit !
- Lieu: Aiken
- Date d'inscription: 29 Nov 2009
- Messages: 4
Re: [MapServer] Installation/Compilation - Image blanche
Merci
Effectivement il ne trouve pas le fichier, le format doit être correct c'est celui du tutoriel
J'ai essayé de multiple chemins sans résultat
Dans le tutoriel il est indiqué
>Je ne sais pas où je dois placer les données (le fichier data)
Vous pouvez les placer où vous voulez. Leur emplacement étant ensuite spécifié dans votre fichier map.
Mapserver attend t 'il un chemin absolu ou bien un chemin dans l'arborescence de mon serveur apache ?
Il y a t'il un paramètre de configuration qui définirait cette emplacement
Merci
Hors ligne
#25 Sun 29 November 2009 18:14
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: [MapServer] Installation/Compilation - Image blanche
MapServer attend soit un chemin absolu, soit un chemin relatif au fichier map. Apache n'a rien à voir là-dedans. Notez aussi que si le paramètre SHAPEPATH est indiqué, il sera ajouté avant tout chemin relatif.
Cordialement
Guillaume
Hors ligne
#26 Sun 29 November 2009 23:19
- joel tremblet
- Juste Inscrit !
- Lieu: Aiken
- Date d'inscription: 29 Nov 2009
- Messages: 4
Re: [MapServer] Installation/Compilation - Image blanche
Merci
Mon répertoire data/vector était doublé, une fois corrigé ce défaut avec vos infos la carte s'affiche enfin
Le tutoriel de GeoTribu comporte cette erreur (et quelques autres), sans ce post, il n'est pas exploitable
Il a le mérite d'exister et je vais proposer sa modification.
Je n'ai pas vu de rubrique équivalente sur GeoRezo
Merci de votre aide
Hors ligne
#27 Mon 30 November 2009 14:36
- Arno974
- Juste Inscrit !
- Date d'inscription: 10 Oct 2006
- Messages: 7
Re: [MapServer] Installation/Compilation - Image blanche
Bonjour,
Étant l'auteur de ce tutoriel, je me permets d'intervenir.
Par acquit de conscience je viens de refaire toutes les étapes du tutoriel et le résultat est correcte.
En utilisant phpMapscript j'obtiens la bonne image.
Il faut donc replacer ce tutoriel dans son contexte. Il s'agit d'une prise en main de phpMapScript et non de mapServer en mode WMS. Évidemment que pour une utilisation dans ce dernier mode, il manque des éléments.
C'est malheureux à dire, mais iI faut passer un peu plus de temps à lire et comprendre qu'à chercher des solutions toutes prêtes.
Néanmoins, je dois avouer qu'il reste un détail que je n'arrive pas à comprendre et que vous avez soulevé, c'est l'image blanche quand j'utilise mapserver en tant que cgi. Cela fonctionne pourtant avec phpMascript.
Arnaud
Dernière modification par Arno974 (Mon 30 November 2009 17:46)
Hors ligne