maptiler / tileserver-php

MBTiles and MapTiler folder hosting with TileJSON, OGC WMTS, UTFGrid interaction and web interface. QGIS & ESRI ArcGIS compatible. Runs on any Apache+PHP webhosting. MapBox Studio Vector Tiles hosting.
http://tileserver.maptiler.com/
568 stars 163 forks source link

JSON metadata file is not valid. Please check configuration of your server #116

Closed toton6868 closed 6 years ago

toton6868 commented 7 years ago

I am trying to use this tileserver php with and mbtiles generated from Tilemill. Its returning "JSON metadata file is not valid. Please check configuration of your server" from server. What I am missing?

daliborjanak commented 7 years ago

I couldn't test it with tilemill tiles but it is standard mbtiles so it might work. Can you provide a broken tileset?

toton6868 commented 7 years ago

sample.zip Here is a sample mbtiles file which I have exported from Tilemill project. Its showing nothing

Also see the following URL where I put the server files and my mbtiles togeether.

http://www.bdmaps.net/tileserver/

daliborjanak commented 7 years ago

In my latest installation is OK. See: image

There might be something wrong with a configuration of your server. Rewrites etc. I couldn't fix it without seeing it. Sorry. So this is not a bug with our software or reading of a data

toton6868 commented 7 years ago

I am using wamp Version 3.1.0. I just copied the zip archive and put it in my wamp directory. then put the mbtile file. do I need to configure anything? The vector.mbtiles is loading but raster.mbtiles is not loading. Beside did you saw the bdmaps url? What is the problem with that?

daliborjanak commented 7 years ago

My mistake sorry, I didn't see URL. Problem is here: http://www.bdmaps.net/tileserver/index.json - this JSON is not valid. You have there a "template" for grit which is wrongly passed to JSON. Are you planning to use utfgrids? My tileserver returns this json from your sample:

{
bounds: [
90.3689,
23.7299,
90.3901,
23.7468
],
minzoom: 15,
maxzoom: 16,
name: "Distribution_Only",
description: "",
attribution: "",
legend: "",
template: "",
version: "1.0.0",
format: "png",
basename: "sample",
profile: "mercator",
scale: 1,
tiles: [
"http://localhost/tech/tileserver-php/sample/{z}/{x}/{y}.png"
],
tilejson: "2.0.0",
scheme: "xyz",
grids: [
"http://localhost/tech/tileserver-php/sample/{z}/{x}/{y}.grid.json"
]
}
toton6868 commented 7 years ago

I am getting the same json for the sample file. I will put the same sample file later on same url and test. But cant get where is the problem in my local wamp server which is showing only osm maps rather than my custom tiles. The bdmaps url problem is I exported mbtiles with utfgrid enabled by full and teaser of Tilemill.

daliborjanak commented 7 years ago

So if you don't want to use grid layers open mbtiles as sqlite3 database (it is so used e.g. SQLite browser http://sqlitebrowser.org/) and delete or modify columns in table metadata. There are fields which are wrongly encoded into tilejson. I don't have time to patch and debug tileserver now (and I need data which breaks it). This might solve your issue

toton6868 commented 7 years ago

Sample file contains the right format Metadata but Still there is no luck.

daliborjanak commented 7 years ago

There is another file on your server which brakes it. TileServer brows all datasets in the folder and uses it. You have OpenMapTiles mbtiles here which brakes it.

toton6868 commented 7 years ago

Here is my json and out put. In the second Image its showing OSM maps rather than my custom tiles


[  
   {  
      "bounds":[  
         90.2726,
         23.6577,
         90.5177,
         23.914
      ],
      "center":"90.39,23.758,15",
      "format":"png",
      "minzoom":10,
      "maxzoom":18,
      "scale":"1",
      "id":"osmbd",
      "attribution":"",
      "description":"",
      "name":"OSMBD",
      "legend":"",
      "tilejson":"2.0.0",
      "template":"",
      "version":"1.0.0",
      "basename":"dhk_main",
      "profile":"mercator",
      "tiles":[  
         "http://localhost/klokantech/dhk_main/{z}/{x}/{y}.png"
      ],
      "scheme":"xyz",
      "grids":[  
         "http://localhost/klokantech/dhk_main/{z}/{x}/{y}.grid.json"
      ]
   },
   {  
      "bounds":[  
         90.3689,
         23.7299,
         90.3901,
         23.7468
      ],
      "minzoom":15,
      "maxzoom":16,
      "name":"Distribution_Only",
      "description":"",
      "attribution":"",
      "legend":"",
      "template":"",
      "version":"1.0.0",
      "format":"png",
      "basename":"sample",
      "profile":"mercator",
      "scale":1,
      "tiles":[  
         "http://localhost/klokantech/sample/{z}/{x}/{y}.png"
      ],
      "tilejson":"2.0.0",
      "scheme":"xyz",
      "grids":[  
         "http://localhost/klokantech/sample/{z}/{x}/{y}.grid.json"
      ]
   }
]

p1 p2

pathmapper commented 6 years ago

You have OpenMapTiles mbtiles here which brakes it.

Maybe related to https://github.com/openmaptiles/openmaptiles/issues/379 ?

daliborjanak commented 6 years ago

Maybe, this examples are now deleted :-( @pathmapper your issue will be solved in omt 3.8. We will let you know in your ticket.

This error "JSON metadata file is not valid. Please check the configuration of your server" generally says that index.json is broken so please go to [tileserver-home]/index.json and look what is wrong there. This was an issue with broken "JSON" filed in TileJSON

dingfengboo commented 6 years ago

I have the same problem when I use mbtiles generated by myself (use openmaptiles). But it is ok for the data download from https://openmaptiles.com/downloads/planet/.

daliborjanak commented 6 years ago

This is known bug: https://github.com/openmaptiles/openmaptiles/issues/379 I will fix it soon

animaux commented 3 years ago

This error is turning up again just now. Could it be because of changes in https://cdn.klokantech.com/tileviewer/v1/index.js ?

marcosci commented 3 years ago

Is there any chance to get an older version of the index.js, that was still functioning?

I am facing the same error, just starting a vanilla tileserver-php within my XAMPP docker.

Kobrairaq commented 3 years ago

Same problem here is there a solution?

dieterdreist commented 2 years ago

maybe I am wrong, but from comparing the metadata within the mbtiles (with sqlite3) and the output I get in the browser, it seems tileserver.php is escaping apostrophes in the json. Apostrophes are not escaped in json. It seems it is done in addslashes in line 193