Die gpx-routen werden nicht mehr angezeigt!

Seit einigen Tagen habe ich das Problem, dass die gpx-Routen nicht mehr angezeigt werden, wenn ich die Datei vom pc aus starte.
Ich habe Beispiele sowohl mit leaflet als auch mit openlayers. Weitere Besonderheit, es ist gleichgültig ob ich mit firefox, Opera oder Chrome öffne. Öffne ich jedoch die Dateien von meiner Seite planetenwege.u-dreher.de ist alles in Ordnung.
Auf dem Server liegen die gleichen Dateien und die Browser sind auch die gleichen.
Icons sind von dem Fehler nicht betroffen.

Was könnte die Ursache sein?

Wie hast du die GPX Dateien denn eingebunden? Statisch? Dynamisch? Wie ist der Pfad dorthin - absolut oder relativ? usw.
Also laut deinem Online-Quellcode via HTTP-Request


protocol: new OpenLayers.Protocol.HTTP({
					url: "untersiemau.gpx",
					format: new OpenLayers.Format.GPX()
				}),

und ja, das kann schon sein, dass das lokal nicht mehr funktioniert, wenn du lokal keinen Webserver laufen hast :wink:

PS: Was war denn vor ein paar Tagen noch anders, dass es funktioniert hat?

Ich habe vor zwei Wochen noch neue Dateien angelegt und die mit filezilla auf den Server übertragen.
Mir ist nicht bewußt, dass sich etwas geändert hat. Meine Seite ist komplett in html geschrieben.

In openlayers sieht der html-Code wie folgt aus:

// Block "Layer mit GPX-Track" - Start
			var GPXVariable_1 = new OpenLayers.Layer.Vector("Weg zu den Infotafeln", {
				strategies: [new OpenLayers.Strategy.Fixed()],
				protocol: new OpenLayers.Protocol.HTTP({
					url: "untersiemau.gpx",
					format: new OpenLayers.Format.GPX()
				}),
				style: {strokeColor: "green", strokeWidth: 5, strokeOpacity: 0.5},
				projection: new OpenLayers.Projection("EPSG:4326")
			});
			map.addLayer(GPXVariable_1);

Mit leaflet: Das ist die neuere Version

http://u-dreher.de/kreuzwege/de5/57392_boedefeld.html
u-dreher.de/kreuzwege/de5/boedefeld.html

<div id="textbereichind" class="scrolldiv3" >

	<object data="boedefeld.html" type="text/html" width="100%" height="100%" >
	</object>
</div>

u-dreher.de/kreuzwege/de5/boedefeld.gpx

var url = 'boedefeld.gpx'; // URL to your GPX file
		new L.GPX(url, {
		async: true,
		polyline_options: {
          weight: '6',
		  color: '#117711',
		  opacity: '0.5'
		},
			marker_options: {
			startIconUrl: '',
			endIconUrl: '',
			shadowUrl: ''
		}
		}).on('loaded', function(e) {
		map.fitBounds(e.target.getBounds());
		}).addTo(map);

Die gpx-datei liegt im gleichen Verzeichnis wie die aufrufende html-datei.

Die Dateien und die Struktur sind identisch auf der Festplatte und und auf dem Server bei 1und1.

JFTR: Das ist nicht HTML, das ist Javascript.

Und bei dir lokal läuft auch ein Webserver? Wenn du einfach html-Dateien lokal im Browser öffnest, dann laufen keine Interaktionen, die brauchen das http(s)-Protokoll. Du musst das Zeux also lokal über http(s)://127.0.0.1/… oder so aufrufen.

Die üblichen Verdächtigen: 1. Irnkwas von http auf https umgestellt und nicht alle URLs angepasst? 2. Groß- und Kleinschreibung bei Ressourcen? (Wobei 2. meist umgekehrt das Problem ist – lokal auf Windows läuft alles, aber entfernt auf Debian nix mehr g)

–ks

Auf meinem Rechner läuft kein Server! Richtig ist, dass ich Javascript eingebuden habe.
Ich rufe die Datei 57392_boedefeld.html direkt mit dem Browser auf, anklicken im Dateimanager.
Die Seite wurde bisher richtig angezeigt, seit zwei Wochen fehlt die gpx-route. Alles andere, die OSM-Karte und die Icon sind da.

Veränderungen habe ich nicht vorgenommen

Udo

Bei solchen Frage wie “ich bekomme plötzlich keine Daten mehr über das Netz” denke ich spontan an HTTPS anstelle von HTTP.

Schau mal, ob du da irgendwie dran drehen kannst. (HTTP → HTTPS)

Und du solltest auf jeden Fall die Console im Browser aktivieren. FF: F12 Dann bekommst du sicher Fehlermeldungen angezeigt, die weiterhelfen.

Gruss
Walter

ps: Virenscanner und so’n Kram würde ich auch mal kurz abschalten. Mich hat öfters mal der GHOST-Plugin von FF gelinkt.

“Geht per http:// aber nicht mit file://” erinner mich an recht alte Diskussionen hier, weil Browser aus Sicherheitsgründen keine Lust haben, die Festplatte auf Anweisung eines dubiosen Stücks JavaScript zu durchsuchen. Aber davon wären nicht alle drei Browser über Nacht plötzlich betroffen. Vielleicht ein zentraleres neulich geändertes Sicherheitsfeature, das lokale Dateien vor allen Browsern schützen soll?

Jo, das wäre hilfreich.

Grüße
Max

Der Firefox ist mein Brauser, den ich zur Anzeige meiner Internetseite für meine lokalen Dateien nutze. Wenn es lokal läuft lade ich die Dateien auf meinen Webspace. Seit FF 68 konnte ich meine lokale Seite nicht mehr betrachten. Das wurde bei FF 68 aus Sicherheitsgründen geändert. Ich habe das in den Einstellungen (about:config) geändert. Nebenbei: Ich arbeite an meiner Seite auf einem alten Rechner den ich nur zur Programmierung benutze und sonst nichts anderes mache

Liebe Helfer!
Die guten Ratschläge habe ich ausprobiert, leider ohne Erfolg.

Vielleicht ein zentraleres neulich geändertes Sicherheitsfeature, das lokale Dateien vor allen Browsern schützen soll?

Wo kann eine solche Einstellung passiert und rückgängig gemacht werden?

Ich vermute stark, dass es daran liegt:

Als Ergänzung dazu hab ich folgendes gefunden:

Firefox 68 (July 9, 2019) Release Notes
CVE-2019-11730: Same-origin policy treats all files in a directory as having the same-origin

Firefox war meines Wissens der letzte Browser, mit dem man in lokalen Seiten (file: URL) noch Dateien laden konnte.

Aber nicht den aus Beitrag #6?

Ich rate zur Installation eines lokalen Webservers. Es muss kein Apatsche sein, sowas wie janaserver tut’s auch, kostet nix und ist kinderleicht zu konfigurieren. Webseiten lokal testen über simples Dateiöffnen ist immer irgendwie nichts Wahres :slight_smile:

–ks

Weitere Versuche haben gezeigt, dass es wohl ein windows 10 Problem ist.
Alle Browser, ff, crome, opera zeigen den gleichen Fehler.
Auf einem Windows 7 Rechner ist noch alles i.O.

Da ich mich auch noch mit php und sql beschäftigen will habe ich apache installiert und die Dateien dort eingegeben.
Unter localhost läuft es, wie es soll.

Danke an alle, die geholfen haben!