Migration Google Maps -> Leaflet / Openstreetmap

  • Hat einer eine schnelle und einfache Anleitung, wie das erst mal im Groben geht? Also ohne die ganzen Besonderheiten, die ich bei G-Maps selbst entworfen und eingebaut habe, sondern nur einfach den Kartenanbieter wechseln? Markerclusterer ist aber Zwang! Frage mich da aber schon, nimmt man dann den von Leaflet oder den von Openstreetmap?

    Leider ist Openstreetmap bzw. Leaflet nicht sonderlich gut dokumentiert. Brauchte schon einen halben Tag, um überhaupt die Dev-Api zu finden :(

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Du meinst wegen dem Versuch auf einen anderen Anbieter zu wechseln oder warum?

    Ein bischen was habe ich da nun schon, aber das ist verdammt schwer. Alle Marker sind drinnen, Clusterer läuft. Aber, ich sehe derzeit noch keinen Weg, wie ich in ein Info-Window einen Tab-Modus bekomme, also ein Window und oben eben Auswahlreiter, wenn mehrere Objekte an der gleichen Stelle sind. Bei Maps geht das mit HTML und Listener. Hier habe ich noch nix gefunden. Oder dass die Karte im maximalen Zoom startet, das aber abhängig von den Markern. Also so, dass alle Marker aus einem Bereich drauf sind, aber eben maximal gezoomt. Bei Google ist das fitBounds.

    Und ganz großer Nachteil, mal abgesehen, dass es keine Satellitenansicht gibt und viele Bereiche gerade bei höheren Zoomstufen schlicht nicht angezeigt werden (auch in DE)... Openstreetmap ist fürchterlich langsam. Google jagt die Karten-Teile in 30 bis 50ms raus. OSM braucht zwischen 300 und 4000ms für ein Quadrat.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Also so was wie fitBounds habe ich gefunden. Marker kann ich noch immer nicht. Aber es ist auf dem Weg. FF meldet aber irgendwelche Speicherprobleme bei der Karte. Gefällt mir auch nicht.

    Wobei ich mir da gerade eine ganz andere Frage stelle, bevor ich da weiter mache am Script.... Google ist USA. Privacy-Shield-Abkommen. OSM ist GB. Wenn die nicht mehr in der EU sind, dann ist das auch ein Drittland. Gibt es da auch ein Abkommen?

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Mühsam ernährt sich das Eichhörnchen.... Fühle mich aber eher wie ein Ameisenbär, der jeden Tag nur eine Ameise findet und die tanzt mir dann auch noch auf der Nase rum....

    Bei diesem, Leaflet / Openstreetmap ist schlicht fast alles anders als bei G-Maps. Tabs im Window, das dort auch nicht Window, sondern PopUp heißt? Geht nicht. Doch, kann man schon hinbiegen, aber dann zählt der Clusterer falsch, der zählt dann nur 1 und nicht 5, wenn 5 an der gleichen Stelle sind.

    Einfach mal so per Listener die UK-ID an das Window geben, damit das den Inhalt dynamsich lädt? Nö, auch nicht, nicht vorgesehen. Theoretisch müsste man alle 3000 Info-Windows schon vorher bestücken und das sind mit jedem Aufruf 3000 Requests und nicht nur einer, wenn einer einen Marker anklickt. Hm, geht nun aber auch, noch nicht sauber, aber die Ameise war freundlich. Man muss nur wirklich alles selbst hinbiegen.

    Und das Schlimmste an der Sache, da sind so viele Anleitungen im Netz, bei denen gar nicht steht, mit welchem Framework die arbeiten. Da kannste dich tot testen und geht halt nicht, da falsche Framework.

    Mensch, so ein Stress und das wegen 4 Cookies :(

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Hm mich mal tiefer in OSM eingegraben hab.... Denn wie ich vorhin merkte, auch OSM setzt Cookies. Die Antwort darauf aus den Datenschutzrichtlinien: "Numerous OSMF operated services use cookies to store information on your login and site navigation state."

    Hm, da spricht Google irgendwie klarere Worte, warum es diese vier Cookies setzt. Aber ja, eines ist ein Universaltracker, der ist auch bei Adsense, Blog, Adwords, Fonts etc. vorhanden.

    Ist doch alles Mist :(

    Aber wie dem aus sei, vielleicht war die Arbeit auch nur für die Katz der Nachbarin.... Es läuft erst mal: https://beispiel.rocks/www.ferien-netzwerk.de/test.php

    Aber wie ist das nun mit "Dienst aus GB"? GB != EU also Drittland.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • So, ich rede dann mal weiter, einen anderen Hilfe-Post habe ich nun ja offen. Habe OSM nun auf zwei Testseiten, aber nicht so als gedacht, denn auch OSM ist nicht konform mit der DSGVO. Es werden Daten übermittelt und Cookies gesetzt. Zwar bleiben die Daten angeblich in DE, aber das ist nicht sicher. OSM sucht sich den nächsten erreichbaren Server. In DE stehen drei. Sind die offline oder überlastet, warum auch immer, dann gehen die Anfragen ins Ausland, eben was als nächstes dann erreichbar ist.

    Und eben das Hauptproblem, OSM ist Großbritannien und das ist Ende 2019 Drittland, also eigentlich noch schlechter als G-Maps in USA mit dem Abkommen.

    So, was mache ich nun? Ich nutzte weiterhin OSM bzw. versuche umzustellen. Aber ich binde die Kacheln nicht direkt vom OSM-Server ein, sondern lasse das über einen Proxy laufen. Mein Server ruft also die Kacheln ab, speichert sie und liefert sie dann aus. Die IP des Nutzers bleibt also bei mir, die geht nicht an OSM.

    Bisherige Nachteile von der Lösung, abgesehen davon, dass Openstreetmap nicht so komfortabel ist wie Google-Maps:

    1. Mein Server muss nun die ganze Arbeit übernehmen
    2. Keine Lastverteilung per CDN auf die einzelnen Nutzer mehr. Fällt meiner aus, dann ist alles tot
    3. Speicherkapazität. Keine Ahnung, wie viel das wird. Spielte nur in DE und Bodensee rum und bin schon bei über 1GB Cache-Speicher.
    4. Fremde könnten meinen Cache missbrauchen und selbst bei sich nutzen -> Serverlast

    Vorteile:
    1. Mein Server liefert derzeit die gespeicherten Kacheln schneller aus als das CDN von OSM selbst
    2. Keine IP-Übermittlung der Nutzer, gesendet wird meine Server-IP
    3. Keine fremden Cookies, denn die bekommt mein Server, nicht der Nutzer

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Nur mal ein unqualifizierter Seiteneinwurf: Danke, dass Du deine Ergebnisse hier mit uns teilst. Mitreden verkneife ich mir mangels Kenntnis der Materie dann aber doch lieber.

    Er war Jurist und auch sonst von mäßigem Verstand.

    (Volker Pispers)

  • Ja, das dachte ich mir nach dem zweiten Post schon. Hatte anfangs die Hoffnung, dass hier einer damit arbeitet, aber habe mich wohl getäuscht. Wollte mich da nicht komplett selbst durchwühlen.... Aber es geht vorwärts. Aus der Alpha bin ich raus, würde nun sagen, eher Beta 3. Da war sogar noch ein Fehler drinnen, der in meiner eigenen Liste fehlte. Wenn man auf "Karte vergrößern" klickt, dann soll die natürlich nicht nur größer werden, also das DIV, sondern auch näher heran zoomen und Cluster auftrennen, wenn möglich. Das macht sie jetzt und das sogar besser als bei der G-Map! Und vor allem, bei Google braucht man für diese Größenänderung und Neuberechnung der Cluster 40 Zeilen JS-Code, bei Leaflet reichen 5, in Kurzform sogar nur 2.

    Und, auch durch Zufall entdeckt, die Karten an sich starten schneller. Bei Google muss man erst ein Center und einen Zoom vorgeben, per Default. Ob der stimmt oder nicht, ist völlig wurscht bzw. zu dem Zeitpunkt unklar. Dann wird die Map gestartet, halt eben mit der falschen Region und die Kacheln geladen. Muss aber so sein, weil man ohne die Map nicht starten kann und ohne Map man nicht auf die G-Funktionen zugreifen kann. Aber erst mit denen kann man den richtigen Zoomlevel und Center-Wert überhaupt ermitteln. Die falschen Defaultangaben sind also sinnlos, verursachen nur Traffik und Wartezeit. Man startet also per Default z.B. erst mal mit Deutschland und Zoom 6, nur um danach sagen zu können, ich will aber Ostfriesland und Zoom 14.

    Vorteil Leaflet: Das geht ganz ohne interne Funktionen. Einfach in der Variable den eigentlichen Center-Wert als schlichte Breiten- und Längengrade hinterlegen und dann die Map starten. Die startet dann sofort richtig, also mit Ostfriesland und Zoom 14.

    Weitere Nachteile:
    1. Die Karten sind sehr oft, gerade in ländlichen Bereichen, sehr ungenau oder fehlen komplett.
    2. Der maximale Zoom ist nicht überall gleich. In Großstädten bis 18, in der Pampa teils nur bis 10. Das merkt der Clusterer aber nicht und zoomt ran. Ergebnis: Graue Kacheln. OSM ist also nicht in der Lage selbst zu erkennen, dass es die Auflösung nicht gibt und selbst vorher zu stoppen.

    Vorteile:
    1. Gerade in Großstädten oder größeren eben sind die Karten viel genauer und aktueller als bei Google. Hier ist z.B. die Landesgartenschau schon eingezeichnet, die erst seit 2 Wochen läuft. Bei Google ist dort noch die Ami-Kasserne bzw. per Satellit eine Baustelle. Oder Straßen, die Baustellen sind, hier schon entsprechend geändert, also die Fahrtrichtung. Bei Google nicht.
    2. Vorteil für mich. Bei OSM sind nicht irgendwelche lokalen Anbieter auf den Karten verlinkt. Angegeben ja, aber nicht verlinkt.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • DSGVO:

    Kann man das in der DSE so schreiben?

    Zitat

    Verwendung von OpenStreetMap

    Die Detailseiten der Unterkünfte und Unterkunftslisten nutzen den Kartendienst der OpenStreetMap Foundation, 132 Maney Hill Road, Sutton Coldfield, West Midlands, B72 1JU, Großbritannien. OpenStreetMap ist ein freies Projekt, das frei nutzbare Geodaten anbietet. Die Einbindung der Karte auf unserer Webseite erfolgt durch Abruf von sog. Kacheln (Kartenbilder) vom OpenStreetMap.org Server. Dieser Abruf wird von unserem Server selbst durchgeführt und dann an Ihren Browser ausgeliefert. Es werden zu keiner Zeit von Ihrem Browser persönliche Daten an OSM (Openstreetmap) gesendet. Die Kommunikation Ihres Browsers zum Abruf der Karten-Kacheln erfolgt ausschließlich mit unseren eigenen Servern, die die Karten selbst von OSM abrufen und dann an Sie ausliefern. Unsere Server erfassen den Abruf der Kartendaten als reine Nutzdaten (Serverlog). Nähere Informationen entnehmen Sie bitte dem Bereich Erfassung von Zugriffen auf unsere Webseite.

    Eigentlich müsste ich wohl gar nix zu schreiben, aber meine Umsetzung ist nicht "Standard". Also normalerweise sendet man Daten an OSM, hier nun nicht mehr, die Daten gehen nur an mich im Sinne eines normalen Abrufs eines Bildes der eigenen Webseite.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Auch nicht schlecht, da habe ich doch tatsächlich mal ein Korn gefunden, so als blindes Huhn und das rein zufällig :hurra: Habe ja alles umgestellt auf OSM. G-Maps nutze ich nur noch bei mir im Admin-Bereich, weil ich zu Adressen die Koordinaten brauche. Vorhin drei Objekte bearbeitet und eine Warnung auf der Map erhalten. Dev-Version, Nutzung nicht autorisiert und so. Eben kam eine Mail rein. G-Maps passt seine Preise an. Ab dem 16.7. keine 250.000 kostenlosen Abrufe mehr, sondern nur noch 28.500, also 950 am Tag (das nicht pro Webseite, sondern für den ganzen Account, also egal, wie viele Webseiten). Hat man mehr, dann zahlt man pro 1000 Abrufe 7 USD! Und man muss sich jetzt an der Google-Cloud anmelden und vor allem auch noch Zahlungsinformationen (Bankverbindung, Kreditkarte etc.) hinterlegen. Werde ich nicht tun....

    Frage an euch nur, wo bekomme ich dann meine Koordinaten her? Möglichst einfach, ohne die irgendwie manuell abtippen zu müssen?

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • aaaargh.. und bing maps kann das auch..
    Einfach dahin und rechtsklick auf die karte. Zeigt er dir sofort an ;)
    https://beispiel.rocks/www.bing.com/maps/

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.

    - nun stolz rauchfrei - Ich denke also Bing ich!

    Support 24h Bereitschaft 0173 6107465 - NUR Für Kunden von SEO NW!

  • Man und ich hab's heute früh wieder gelöscht - vorm Abschicken. Und weißte warum? Ich dachte, ich hätte das Problem nicht verstanden, weil konnte ja nicht sein ^^

    Er war Jurist und auch sonst von mäßigem Verstand.

    (Volker Pispers)

  • Danke Alex. Also das mit der App scheidet aus, denn dazu bräuchte ich die App und die geht auf meinem Gerät nicht, b) muss man den Standort erst mal selbst suchen und wenn man keine Ahnung hat, wo Straße X in Land Y liegt, dann ist das eine Tagesaufgabe.

    Aktuell habe ich hier einfach ein Formular. Da gebe ich eine Adresse ein und klicke auf Suchen. Dann wird mir die Karte mit den Standort angezeigt und die Koordinaten ins System übernommen. Dauert keine 2 Sekunden, da auch die Datenübernahme automatisiert ist. Nur "klicken" muss ich selbst.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(

  • Aber ok, sehe gerade, man kann bei BIng auch die Adresse einfach angeben und in dem Kasten links stehen die Daten dann auch. Muss man dann halt manuell raus kopieren, aber besser als nix.

    Nur sind das leider andere als bei Google :(

    Google sagt zu meiner Adresse:

    Breitengrad: 49.78443
    Längengrad: 9.93244

    Bing sagt:

    Breitengrad: 49,784394
    Längengrad: 9,93234

    Und leider liegt hier Bing falsch, um etwa 15 Meter. Aber auch das wäre in Ordnung, besser als nix.

    Wenn ein Mensch nicht um dich kämpft, hat er nur gewartet, dass du gehst. ;(