You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#1 2015-08-19 11:45:07

myshol
Member
Registered: 2015-08-19
Posts: 14

Własny serwer OSM - ścieżka do kafelków

Według poniższej instrukcji zbudowałem swój serwer OSM:

https://switch2osm.org/serving-tiles/bu … -packages/

Serwer działa prawidłowo, co potwierdza możliwość przeglądania map po wywołaniu w przeglądarce adresu serwera z przygotowaną stroną html, dla przykładu:

http://10.10.10.10/osm/index.html

W skrypcie podany jest adres kafelków:

{z}/{x}/{y}.png


Teraz chcę odwołać się do tych map z innego serwera, żeby rozdzielić serwer aplikacji od serwera map.

I tu pojawia się problem, pod jakim adresem dostępne będą kafelki? Jak to sprawdzić?

Będzie to zapewne adres w postaci:

http://10.10.10.10/.../{z}/{x}/{y}.png

W którym miejscu w konfiguracji serwera można to sprawdzić?

Offline

#2 2015-08-19 12:16:43

eBin
Member
From: ~Rzeszów
Registered: 2013-06-03
Posts: 236

Re: Własny serwer OSM - ścieżka do kafelków

Podglądnij sobie plik http://10.10.10.10/osm/slippymap.html czy inddex.html i tam będziesz miał adres.
W konfiguracji to chyba powinno być URI w /etc/renderd.conf

Last edited by eBin (2015-08-19 12:17:29)

Offline

#3 2015-08-19 12:33:45

myshol
Member
Registered: 2015-08-19
Posts: 14

Re: Własny serwer OSM - ścieżka do kafelków

Oczywiście podglądałem już slippymap.html, jednak tam jest tylko ścieżka lokalna, tzn:

${z}/${x}/${y}.png

Natomiast w pliku /etc/renderd.conf faktycznie znajduje się URI:

URI=/osm/

Ustawiłem więc w swoim skrypcie adres serwera kafelków na:

http://10.10.10.10/osm/{z}/{x}/{y}.png

jednak mapa nadal nie jest wyświetlana.

Skrypt poza tym adresem jest dobry, ponieważ po usunięciu linijki z url ładują się standardowe mapy OSM.

(...)
source: new ol.source.OSM({
   url: 'http://10.10.10.10/osm/{z}/{x}/{y}.png'
})
(...)

Co ciekawe, wpisując w przeglądarce np.

http://10.10.10.10/osm/0/0/0.png

widzę mapę świata. Inne kafelki też się wyświetlają.

Offline

#4 2015-08-19 12:40:23

balrog-kun
Member
From: Warsaw, Poland
Registered: 2008-08-10
Posts: 1,365
Website

Re: Własny serwer OSM - ścieżka do kafelków

W firefoksie w Tools > Web Developer > Network mozesz podejrzec jaki adres probuje zaladowac przegladarka, i dlaczego on sie nie laduje.

Offline

#5 2015-08-19 14:17:19

myshol
Member
Registered: 2015-08-19
Posts: 14

Re: Własny serwer OSM - ścieżka do kafelków

Dzięki Waszym informacjom udało mi się ustalić, że ścieżka do moich kafelków to:

http://10.10.10.10/osm/{z}/{x}/{y}.png

W zakładce Tools > Web Developer -> Network widoczne są wszystkie grafiki/kafelki, które powinny się załadować, ze statusem "200 OK". Narzędzie także pokazuje prawidłowo podgląd każdego z nich. Co więcej, po kliknięciu w ZOOM IN (+) widać, że witryna ładuje kolejne kafelki stosownie do wybranego powiększenia.

Nie widzę także innych błędów w kodzie strony czy też w załączonych plikach.

Mimo to kafelki z mojego serwera nadal nie są wyświetlane na stronie. Po przełączeniu się na serwer OSM działają prawidłowo.

Sądzę zatem, że czegoś nie dodałem jakiejś opcji tutaj:


(...)
source: new ol.source.OSM({
   url: 'http://10.10.10.10/osm/{z}/{x}/{y}.png'
})
(...)

http://openlayers.org/en/v3.8.2/apidoc/ … e.OSM.html

Może poza "url" coś jeszcze jest potrzebne do prawidłowej pracy z własnym serwerem?



---

Po dodaniu opcji

crossOrigin

mapa zaczęła działać prawidłowo.

Last edited by myshol (2015-08-19 14:23:39)

Offline

Board footer

Powered by FluxBB