Ich habe Miros Antwort auf den Link zur Header-Checker-Site http://www.webconfs.com/http-header-check.php gegeben . Bei jeder Verwendung wird eine unangenehme Anzeige angezeigt. Sie ist jedoch sehr nützlich, um das Vorhandensein des Headers "Access-Control-Allow-Origin" zu überprüfen.
Ich lese eine .json-Datei aus dem Javascript auf meiner Webseite. Ich habe festgestellt, dass das Hinzufügen des Folgenden zu meiner .htaccess-Datei das Problem beim Anzeigen meiner Webseite in IE 11 (Version 11.447.14393.0) behoben hat:
<FilesMatch "\.(json)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>
Ich habe außerdem Folgendes zu /etc/httpd.conf (Apaches Konfigurationsdatei) hinzugefügt:
AllowOverride All
Die Header-Checker-Site hat überprüft, ob der Access-Control-Allow-Origin-Header jetzt gesendet wird (danke, Miro!).
Firefox 50.0.2, Opera 41.0.2353.69 und Edge 38.14393.0.0 rufen die Datei jedoch trotzdem ab, auch ohne den Header Access-Control-Allow-Origin. (Hinweis: Möglicherweise werden IP-Adressen überprüft, da die beiden von mir verwendeten Domänen beide auf demselben Server und derselben IPv4-Adresse gehostet werden.)
Chrome 54.0.2840.99 m (64-Bit) ignoriert jedoch den Header "Access-Control-Allow-Origin" und schlägt trotzdem fehl, indem fälschlicherweise Folgendes gemeldet wird:
In der angeforderten Ressource ist kein Header 'Access-Control-Allow-Origin' vorhanden. Origin ' {mydomain} ' ist daher kein Zugriff gestattet.
Ich denke, das muss eine Art "Erste" sein. IE funktioniert richtig; Chrome, Firefox, Opera und Edge sind alle fehlerhaft. und Chrome ist das Schlimmste . Ist das nicht das genaue Gegenteil des Normalfalls?
a2enmod headers