Tôi đã +1 câu trả lời của Miro cho liên kết đến trang web kiểm tra tiêu đề http://www.webconfs.com/http-header-check.php . Nó bật lên một quảng cáo đáng ghét mỗi khi bạn sử dụng, nhưng tuy nhiên, nó rất hữu ích để xác minh sự hiện diện của tiêu đề Access-Control-Allow-Origin.
Tôi đang đọc tệp .json từ javascript trên trang web của mình. Tôi nhận thấy rằng việc thêm phần sau vào tệp .htaccess của mình đã khắc phục được sự cố khi xem trang web của tôi trong IE 11 (phiên bản 11.447.14393.0):
<FilesMatch "\.(json)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>
Tôi cũng đã thêm phần sau vào /etc/httpd.conf (tệp cấu hình của Apache):
AllowOverride All
Trang web kiểm tra tiêu đề đã xác minh rằng tiêu đề Access-Control-Allow-Origin hiện đang được gửi (cảm ơn, Miro!).
Tuy nhiên, Firefox 50.0.2, Opera 41.0.2353.69 và Edge 38.14393.0.0 đều có thể tìm nạp tệp, ngay cả khi không có tiêu đề Access-Control-Allow-Origin. (Lưu ý: họ có thể đang kiểm tra địa chỉ IP, vì hai miền tôi đang sử dụng đều được lưu trữ trên cùng một máy chủ, tại cùng một địa chỉ IPv4.)
Tuy nhiên, Chrome 54.0.2840,99 m (64-bit) bỏ qua tiêu đề Access-Control-Allow-Origin và không thành công, báo cáo sai:
Không có tiêu đề 'Access-Control-Allow-Origin' có trên tài nguyên được yêu cầu. Nguồn gốc ' {mydomain} ' do đó không được phép truy cập.
Tôi nghĩ điều này phải là một loại "đầu tiên". IE đang hoạt động bình thường; Chrome, Firefox, Opera và Edge đều có lỗi; và Chrome là tệ nhất . Đó không phải là điều hoàn toàn ngược lại với trường hợp thông thường sao?
a2enmod headers