416 错误(范围无法满足)

问题描述 投票:0回答:1

检查 Chrome 的控制台,会显示以下与 GeoTIFF(山体阴影)相关的错误消息

416 Range Not Satisfiable
,其中包含概述,并按此 OpenLayers 示例中的说明进行显示。尽管这个GeoTIFF在QGIS等GIS软件中显示良好,但在OpenLayers中却没有出现,这里是控制台输出:

Failed to load resource: the server responded with a status of 416 (Range Not Satisfiable)

chunk-S4773HGR.js?v=e5f68cd5:255 AggregateError: Request failed
    at BlockedSource.fetch (chunk-RYMH54PX.js?v=e5f68cd5:3427:13)
    at async GeoTIFF.fromSource (chunk-RYMH54PX.js?v=e5f68cd5:4339:25)
    at async fromUrls (chunk-RYMH54PX.js?v=e5f68cd5:4431:20)
    at async Promise.all (:5173/index 0)

AggregateError: Request failed
    at BlockedSource.fetch (chunk-RYMH54PX.js?v=e5f68cd5:3427:13)
    at async GeoTIFFImage.getTileOrStrip (chunk-RYMH54PX.js?v=e5f68cd5:2250:20)
    at async Promise.all (:5173/index 3)
    at async GeoTIFFImage._readRaster (chunk-RYMH54PX.js?v=e5f68cd5:2354:5)
    at async GeoTIFFImage.readRasters (chunk-RYMH54PX.js?v=e5f68cd5:2436:20)
    at async Promise.all (:5173/index 0)
error @ chunk-S4773HGR.js?v=e5f68cd5:255
(anonymous) @ chunk-RYMH54PX.js?v=e5f68cd5:4919
Promise.catch (async)
loadTile_ @ chunk-RYMH54PX.js?v=e5f68cd5:4918
(anonymous) @ chunk-RYMH54PX.js?v=e5f68cd5:399
promiseGetter @ chunk-UW3UJV7T.js?v=e5f68cd5:205
toPromise @ chunk-UW3UJV7T.js?v=e5f68cd5:214
loader @ chunk-RYMH54PX.js?v=e5f68cd5:398
load @ chunk-CVKQJISJ.js?v=e5f68cd5:101
loadMoreTiles @ chunk-DPXPVHTQ.js?v=e5f68cd5:209
handlePostRender @ chunk-ZOWXVZGN.js?v=e5f68cd5:1349
(anonymous) @ chunk-ZOWXVZGN.js?v=e5f68cd5:1653
setTimeout (async)
renderFrame_ @ chunk-ZOWXVZGN.js?v=e5f68cd5:1651
animationDelay_ @ chunk-ZOWXVZGN.js?v=e5f68cd5:1530
requestAnimationFrame (async)
render @ chunk-ZOWXVZGN.js?v=e5f68cd5:1549
renderFrame_ @ chunk-ZOWXVZGN.js?v=e5f68cd5:1625
animationDelay_ @ chunk-ZOWXVZGN.js?v=e5f68cd5:1530
Show 16 more frames
Show less

GeoTIFF 山体阴影信息:

Driver: GTiff/GeoTIFF Files: raster/DN_mb_p_hs.tif
       raster/DN_mb_p_hs.tif.ovr Size is 202, 167 Coordinate System is: GEOGCRS["WGS 84",
    DATUM["World Geodetic System 1984",
        ELLIPSOID["WGS 84",6378137,298.257223563,
            LENGTHUNIT["metre",1]]],
    PRIMEM["Greenwich",0,
        ANGLEUNIT["degree",0.0174532925199433]],
    CS[ellipsoidal,2],
        AXIS["geodetic latitude (Lat)",north,
            ORDER[1],
            ANGLEUNIT["degree",0.0174532925199433]],
        AXIS["geodetic longitude (Lon)",east,
            ORDER[2],
            ANGLEUNIT["degree",0.0174532925199433]],
    ID["EPSG",4326]] Data axis to CRS axis mapping: 2,1 Origin = (-76.670150505107600,-15.648671508436596) Pixel Size = (0.000933010215195,-0.000903702652032) Metadata:   AREA_OR_POINT=Area Image Structure Metadata:   INTERLEAVE=BAND Corner Coordinates: Upper Left  ( -76.6701505, -15.6486715) ( 76d40'12.54"W, 15d38'55.22"S) Lower Left  ( -76.6701505, -15.7995899) ( 76d40'12.54"W, 15d47'58.52"S) Upper Right ( -76.4816824, -15.6486715) ( 76d28'54.06"W, 15d38'55.22"S) Lower Right ( -76.4816824, -15.7995899) ( 76d28'54.06"W, 15d47'58.52"S) Center      ( -76.5759165,
-15.7241307) ( 76d34'33.30"W, 15d43'26.87"S) Band 1 Block=202x40 Type=Byte, ColorInterp=Gray
    Computed Min/Max=1.000,255.000   Minimum=1.000, Maximum=255.000, Mean=140.243, StdDev=60.615   NoData Value=0   Overviews: 26x21, 13x11, 7x6, 4x3, 2x2, 1x1   Metadata:
    STATISTICS_MAXIMUM=255
    STATISTICS_MEAN=140.24288070368
    STATISTICS_MINIMUM=1
    STATISTICS_STDDEV=60.614910682844
    STATISTICS_VALID_PERCENT=53.92

其 *.ovr 文件是使用以下命令创建的:

gdaladdo $tif -r lanczos --config SPARSE_OK_OVERVIEW ON --config BIGTIFF_OVERVIEW YES --config GDAL_NUM_THREADS ALL_CPUS 8 16 32 64 128 256 -ro

我想知道概述文件是否有问题,至少使用的选项允许在 OpenLayers 中显示类似的 GeoTIFF。

欢迎任何提示,

google-chrome openlayers gdal geotiff
1个回答
0
投票

感谢您的评论,最后解决方案是在我的 OL 目录中创建一个

.htaccess
文件并放入其中:

Header set Accept-Ranges none Request
Header unset Range

一旦准备好,416 条消息就消失了。

希望这对其他人有帮助,

© www.soinside.com 2019 - 2024. All rights reserved.