问题描述
我已经在我的网站上使用了谷歌地图(也有不同的主机)或几年。 今天由于某种原因他们停止工作了。
我曾经/正在使用此页面作为基础: https://developers.google.com/maps/documentation/javascript/examples/layer-kml
问题是当我复制该 HTML 并按原样上传到我的服务器时,它工作正常。 但是,当我下载 KML 文件 (https://googlearchive.github.io/js-v2-samples/ggeoxml/cta.kml) 并将其上传到我的服务器并更改 html 以反映它时,它不起作用。
我在 2 个不同的服务器上尝试过。
更新:
http://www.feztravel.com/testMap1.asp
上面提到的例子的直接副本,它有效
http://www.feztravel.com/testMap2.asp 唯一的区别是我的主机服务器上的 cta.kml 文件。
同样,我有权访问的两台服务器在 2 天前都在工作。
解决方法
我在 https://www.feztravel.com/cta.kml 上收到 404 错误。
如果该文件确实在服务器上,则服务器配置不正确。
您可以尝试在服务器和引用它的页面中将其重命名为 cta.xml
。
that link 上的错误消息解释了该问题:
HTTP Error 404.3 - Not Found
The page you are requesting cannot be served because of the extension configuration.
If the page is a script,add a handler. If the file should be downloaded,add a MIME map.
为什么我的 KML 文件不能从我的网络服务器正确下载?
必须告知 Web 服务器它们提供的文件类型。某些浏览器(例如 Firefox)会猜测文件类型。其他的,例如 Internet Explorer,依赖于网络服务器的 MIME 类型设置。
对于 Apache 服务器,您可以在 httpd.conf 中包含这两行:
AddType 应用程序/vnd.google-earth.kml+xml .kml
AddType application/vnd.google-earth.kmz .kmz
对于 Microsoft 的 Internet Information Server,您应遵循以下说明:
IIS 6.0 版:
http://support.microsoft.com/kb/326965 IIS 4.0 和 5.0:
http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/iis/maintain/featusability/mimeiis.mspx
如果您管理自己的网络服务器,则必须更改自己的配置。
否则,请联系您的网站托管服务并要求他们进行这些更改。