問題描述
我在程序中使用帶有以下代碼的傳單地圖:
<style><link rel="stylesheet" integrity="sha512-Rksm5RenBEKSKFjgI3a41vrjkw4EVPlJ3+OiI65vTjIdo9brlAacEuKOiQ5OFh7cOI1bkDwLqdLw3Zg0cRJAAQ=="crossorigin@import url(//cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.2/leaflet.css);#地圖 {寬度:960px;高度:500px;}</風格><身體><div id="地圖"/><腳本類型="文本/javascript">var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',osmAttrib = '©<a >OpenStreetMap</a>貢獻者,osm = L.tileLayer(osmUrl, {maxZoom: 20, attribution: osmAttrib});var map = L.map('map').setView([37.5, -115], 6).addLayer(osm);</身體>
但是,我在地圖上的隨機位置不斷看到一些灰色方塊,并且在 javascript 控制臺中收到以下 Leaflet 錯誤代碼:
http://a.tile.openstreetmap.org/6/8/25.png 504(網關超時)
有人知道出了什么問題以及如何解決嗎?
來自 OpenStreetMap 瓦片服務器的 50x 錯誤是 OSM 方面的問題,而不是您使用(或誤用)OSM 瓦片引起的問題在您的網站或應用程序中.
從您提出問題的具體時間和日期來看,我會做出一個瘋狂的假設,并說您在網絡瞬時過載期間訪問了一個 squid 代理服務器,而系統- 從 squid 2 到 squid 3 的全面升級在過去的幾天里一直在進行(注意下面的截圖是 git repo 的
請記住,OSM 磁貼服務器和代理服務器由(了不起的)志愿者系統管理員團隊維護,雖然他們盡最大努力保持一切正常運行,但 OSM 基金會不對服務質量做出任何保證.
在 https://operations.osmfoundation.org/ 了解更多相關信息,特別是在 https://operations.osmfoundation.org/policies/tiles/
<塊引用>有誰知道出了什么問題以及如何解決它?
一般來說,OSMF 服務的暫時故障可以通過以下方式解決:
- 耐心等待系統管理員解決問題.
- 潛伏在 OFTC #OSM-dev IRC 頻道(此處了解更多信息)具體了解出了什么問題,禮貌地問.如果你這樣做了,不要對那里的人造成滋擾;它只會減慢速度.
- 向 OSMF 捐款,以提高其運營能力.
- 自愿加入 OSMF 運營工作組,或為鏡像硬件做出貢獻服務器等.
如果您不想受 OSMF 的限制,有幾個常見的替代方案:
- 使用商業磁貼提供商(其中一些提供商在此處列出)
- 托管您自己的磁貼(此處了解更多信息)
- 緩存圖塊.與大多數商業供應商不同,OSM 允許您以幾乎任何您想要的方式存儲、代理和緩存切片.事實上,我們鼓勵任何可以減輕 OSMF 服務器負載的事情,只要您稍加注意(即不要為緩存設置種子,否則會觸發批量下載).
I am using a leaflet map in program with the following code:
<style>
<link rel="stylesheet" integrity="sha512-Rksm5RenBEKSKFjgI3a41vrjkw4EVPlJ3+OiI65vTjIdo9brlAacEuKOiQ5OFh7cOI1bkDwLqdLw3Zg0cRJAAQ==" crossorigin=""/>
@import url(//cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.2/leaflet.css);
#map {
width: 960px;
height: 500px;
}
</style>
<body>
<div id="map"/>
<script type="text/javascript">
var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
osmAttrib = '© <a >OpenStreetMap</a> contributors',
osm = L.tileLayer(osmUrl, {maxZoom: 20, attribution: osmAttrib});
var map = L.map('map').setView([37.5, -115], 6).addLayer(osm);
</body>
However, I keep seeing some grey square on my maps at random positions and I get the following Leaflet error code in the javascript console:
http://a.tile.openstreetmap.org/6/8/25.png 504 (Gateway Timeout)
Would anyone know what's wrong and how to solve it?
A 50x error from the OpenStreetMap tile servers is a problem caused on the OSM side of things, not a problem caused by your use (or misuse) of OSM tiles in your website or application.
Judging by the specific time and date of your question, I'll make a wild assumption and say that you were hitting one of the squid proxy servers during a momentary overload of the network while a system-wide upgrade from squid 2 to squid 3 has been going on for the past few days (note the screenshot below is for the git repo holding the chef devops recipes for the OSM servers, and also the fact that I can see the status of the OSM servers is awesome).
Please keep in mind that the OSM tile servers and proxy servers are maintained by a team of (awesome) volunteer system administrators and, while they do their best to keep everything up and running, the OSM Foundation can not make any guarantees about the quality of service.
Read more about this at https://operations.osmfoundation.org/ and specifically at https://operations.osmfoundation.org/policies/tiles/
Would anyone know what's wrong and how to solve it?
In general, temporarily failures of the OSMF services can be solved by:
- Having patience and waiting for the sysadmins to fix things.
- Lurking at the OFTC #OSM-dev IRC channel (more info here) to know specifically what's wrong and politely asking. If you do so, do not be a nuisance to the people there; it will only slow things down.
- Donating money to the OSMF so it can increase its operational capabilities.
- Volunteering to be a part of the OSMF Operations Working Group, or contributing with hardware for mirror servers or the like.
If you do not want to be bound by the limitations of the OSMF, there are a couple common alternatives:
- Use a commercial tile provider (some of the providers are listed here)
- Host your own tiles (more information here)
- Cache the tiles. Unlike most commercial vendors, OSM allows you to store, proxy, and cache the tiles in pretty much whatever way you want. In fact, anything that will lessen the load on the OSMF servers is encouraged, as long as you take a modicum of care (i.e. do not seed your cache, which would trigger bulk downloads).
這篇關于OpenStreetMap 經常發送網關超時錯誤的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!