Когда я пытаюсь применить свой собственный стиль к плиткам, обслуживаемым Tileserver PHP, я получаю эту ошибку: «Невозможно проанализировать объект URL» - PullRequest
0 голосов
/ 03 апреля 2020

В поисках простого сервера я нашел Tileserver PHP. Я пытался следовать этому учебнику . Я размещаю файлы на ящике Linux с адресом 192.168.2.22 в моей сети, конечно же, с Apache и PHP. У меня был успех, когда я открыл http://192.168.2.22/tileserver/, потому что потом увидел загруженные плитки в формате * .mbtiles. Затем я попытался применить эту версию OSM Bright Style . Как описано в руководстве, я адаптировал файл style-cdn. json. В моем случае модифицированный раздел выглядит так:

"sources": {
    "openmaptiles": {
        "type": "vector",
        "url": "/tileserver/tileserver.php?/2017-07-03_bangladesh_dhaka.json"
    }
},
"sprite": "/brightstyle/sprite",

Как видите, я использовал относительный URL. Я тоже пробовал вещи с абсолютным адресом, но различий не увидел. В любом случае, когда я указываю своему браузеру http://192.168.2.22/brightstyle/, я не вижу никаких плиток. Я заметил, что в клиенте происходит ошибка - к сожалению. Это отображается в консоли моего браузера Firefox: Ошибка: «Невозможно проанализировать объект URL». Это происходит после получения https://api.tiles.mapbox.com/mapbox-gl-js/v1.5.0/mapbox-gl.js. Дополнительная информация с консоли:
ajax. js: 169
Evented. js: 136: 20
Fire Evented. js: 136
_request style. js : 201.

Что вызывает эту ошибку и что я могу сделать, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 03 апреля 2020

После дальнейшей проверки и попытки проблема возникла именно по относительному URL. Указав URL-адрес как http://192.169.2.22/tileserver/tileserver.php? / 2017-07-03_bangladesh_dhaka. json ", я обнаружил другую ошибку: исходного слоя" aerodrome_label "не существует в исходных" openmaptiles ", как указано в слое стиля" airport-label-major ". Я решил эту проблему, полностью удалив слой с id =" airport-label-major ". Наконец-то я решил ошибки, такие как" Cross-Origin Request Blocked: политика одного источника запрещает чтение удаленного ресурса в .. "размещая плитки на своем компьютере. Теперь я вижу плитки; -)

...